我是java和Android的新手,我现在被卡住了。我的目标是做一个菜单来探索目录。我刚刚完成了第一部分,但是当我启动它时应用程序崩溃了。我认为由于这些图片,我认为我并不了解一切。 这是我的源代码:
public class MainActivity extends AppCompatActivity {
private Bitmap[] tabImg = {
BitmapFactory.decodeResource(getResources(), R.drawable.powerload),
BitmapFactory.decodeResource(getResources(), R.drawable.striplineattenuator),
BitmapFactory.decodeResource(getResources(), R.drawable.smd_resistor),
BitmapFactory.decodeResource(getResources(), R.drawable.uhf),
BitmapFactory.decodeResource(getResources(), R.drawable.impedancematcher),
};
ListView mListView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mListView = (ListView) findViewById(R.id.listView);
List<Produit> produit = genererProduit();
ProduitAdapter adapter = new ProduitAdapter(MainActivity.this, produit);
mListView.setAdapter((ListAdapter) adapter);
}
private List<Produit> genererProduit() {
List<Produit> produit = new ArrayList<Produit>();
produit.add(new Produit("aaa", "L'intégralité des xxx", tabImg[1]));
produit.add(new Produit("bbb", "L'intégralité des xxx",tabImg[2]));
produit.add(new Produit("ccc", "L'intégralité des xxx",tabImg[3]));
produit.add(new Produit("ddd", "L'intégralité des xxx",tabImg[4]));
produit.add(new Produit("eee", "Tous les autres produits xxx",tabImg[5]));
return produit;
}
}
-----------------------------------
public class Produit {
private String nom;
private String codeProduit;
private Bitmap image;
public Produit(String nom, String codeProduit,Bitmap image) {
this.nom = nom;
this.codeProduit = codeProduit;
this.image = image;
}
public String getNom() {
return nom;
}
public String getCodeProduit() {
return codeProduit;
}
public Bitmap getImage() {
return image;
}
public void setNom(String nom) {
this.nom = nom;
}
public void setSurname(String codeProduit) {
this.codeProduit = codeProduit;
}
public void setImage(Bitmap image) {
this.image = image;
}
}
------------------------------------------------------------------
public class ProduitAdapter extends ArrayAdapter<Produit> {
//tweets est la liste des models à afficher
public ProduitAdapter(Context context, List<Produit> produit) {
super(context, 0, produit);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if (convertView == null) {
convertView = LayoutInflater.from(getContext()).inflate(R.layout.rowlayout, parent, false);
}
ViewHolder viewHolder = (ViewHolder) convertView.getTag();
if (viewHolder == null) {
viewHolder = new ViewHolder();
viewHolder.nom = (TextView) convertView.findViewById(R.id.nom);
viewHolder.codeProduit = (TextView) convertView.findViewById(R.id.codeProduit);
viewHolder.image = (ImageView) convertView.findViewById(R.id.image);
convertView.setTag(viewHolder);
}
else {
viewHolder = (ViewHolder) convertView.getTag();
}
Produit produit = getItem(position);
//il ne reste plus qu'à remplir notre vue
viewHolder.nom.setText(produit.getNom());
viewHolder.codeProduit.setText(produit.getCodeProduit());
viewHolder.image.setImageBitmap(produit.getImage());
return convertView;
}
}
public class ViewHolder {
public TextView nom;
public TextView codeProduit;
public ImageView image;
}
欢迎任何帮助,我非常肯定这是一个愚蠢的事情,但我再次对此我很陌生。感谢您的帮助和建议! Seedbarrett