Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save kuraydev/95cae2c6a445f32e70ad to your computer and use it in GitHub Desktop.

Select an option

Save kuraydev/95cae2c6a445f32e70ad to your computer and use it in GitHub Desktop.
In RecyclerView, using setImageResource, sometimes does not fit full scale an image, so this is the solution ! :)
//Fitting full view of an image
imageView.setImageResource(R.drawable.deadpool);
imageView.setScaleType(ImageView.ScaleType.FIT_XY);
@MerabetNassima
Copy link
Copy Markdown

bjr,
je suis nouvelle dans la programmation mobile et j'ai un problème dans mon recyclerview pour l'affichage des image:voila mon adapter
`public class MyListAdapter extends RecyclerView.Adapter<MyListAdapter.MyViewHolder>{
List mesBt;
MyListAdapter(List mesBt){this.mesBt=mesBt;
//this.glide=glide;
}
//private RequestManager glide;
class MyViewHolder extends RecyclerView.ViewHolder{
private TextView mNom;
private TextView mNum;
private ImageView mImg;
public MyViewHolder(View itemView){
super(itemView);
mNom=(TextView)itemView.findViewById(R.id.nom);
mNum=(TextView)itemView.findViewById(R.id.num);
mImg=(ImageView)itemView.findViewById(R.id.img);
}
/* void display(BT bt){
mNom.setText(bt.getNom());
mNum.setText(bt.getNum());
mImg.setImageDrawable(bt.getImg());

    //glide.load(bt.getUrl()).apply(RequestOptions.circleCropTransform()).into(mImg);

}*/

}
@OverRide
public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
LayoutInflater layoutInflater= LayoutInflater.from(parent.getContext());
View view= layoutInflater.inflate(R.layout.ligne,parent,false);
return new MyViewHolder(view);
}

@Override
public void onBindViewHolder(MyViewHolder holder, int position) {
    //holder.display(mesBt.get(position));
    BT bts= mesBt.get(position);
    holder.mNom.setText((CharSequence) bts.getNom());
    holder.mNum.setText(bts.getNum());
    holder.mImg.setImageResource(bts.getImg());
}

@Override
public int getItemCount() {
    return mesBt.size();
}

}
et la classe BT:
`
public class BT {
private String nom;
private String num;
private int img;

public BT(String nom,String num,int img) {
    this.nom=nom;
    this.num=num;
    this.img=img;
}

public String getNom() {
    return nom;
}

public String getNum() {
    return num;
}
public int getImg() {
    return img;
}

}
et le main:public class MainActivity extends AppCompatActivity {
private RecyclerView mRecyclerView;
private List mesBT;
private MyListAdapter monAdapter;
Resources res= getResources();
int resourceId = res.getIdentifier("fond", "drawable", getPackageName() );
@OverRide
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mRecyclerView= (RecyclerView) findViewById(R.id.myRecyclerView);
mesBT = new ArrayList<>();
mesBT.add(new BT("Acsenceur","D12235",resourceId));
mesBT.add(new BT("machine2","D12254",resourceId));
mesBT.add(new BT("pompe a gase","D15835",resourceId));
mesBT.add(new BT("pompe a eau","D14735",resourceId));
monAdapter= new MyListAdapter(mesBT);
mRecyclerView.setLayoutManager(new LinearLayoutManager(getApplicationContext()));
mRecyclerView.setAdapter(monAdapter);
}
}
`

@seeeerge
Copy link
Copy Markdown

ça a marché ?
Je suis aussi newbee, et j'ai aussi un problème avec la ligne " holder.mImg.setImageResource(bts.getImg()) "
l'IDE ne veut pas de variable String dans " holder.my_img_variable.setImageResource(R.drawable.mes_noms_d_images)
il n'accepte qu'une valeur (qui existe dans drawable) !

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment