I have tried this, but I didn't understand how to make custom names for my variables. Here is the code that I want to make shorter:
TextView viewmt1 = (TextView) v.findViewById(R.id.mt1);
TextView viewmt2 = (TextView) v.findViewById(R.id.mt2);
TextView viewmt3 = (TextView) v.findViewById(R.id.mt3);
TextView viewmt4 = (TextView) v.findViewById(R.id.mt4);
TextView viewmt5 = (TextView) v.findViewById(R.id.mt5);
TextView viewmt6 = (TextView) v.findViewById(R.id.mt6);
TextView viewmt7 = (TextView) v.findViewById(R.id.mt7);
TextView viewtid1 = (TextView) v.findViewById(R.id.tid1);
TextView viewtid2 = (TextView) v.findViewById(R.id.tid2);
TextView viewtid3 = (TextView) v.findViewById(R.id.tid3);
TextView viewtid4 = (TextView) v.findViewById(R.id.tid4);
TextView viewtid5 = (TextView) v.findViewById(R.id.tid5);
TextView viewtid6 = (TextView) v.findViewById(R.id.tid6);
TextView viewtid7 = (TextView) v.findViewById(R.id.tid7);
ImageView viewImage1 = (ImageView) v.findViewById(R.id.imageView1);
ImageView viewImage2 = (ImageView) v.findViewById(R.id.imageView2);
ImageView viewImage3 = (ImageView) v.findViewById(R.id.imageView3);
ImageView viewImage4 = (ImageView) v.findViewById(R.id.imageView4);
ImageView viewImage5 = (ImageView) v.findViewById(R.id.imageView5);
ImageView viewImage6 = (ImageView) v.findViewById(R.id.imageView6);
ImageView viewImage7 = (ImageView) v.findViewById(R.id.imageView7);
1.init TextView
、ImageView
array
2.add for loop
3.get id of the view
4.findViewById in the code
Try this .
TextView[] textViews1 = new TextView[7];
TextView[] textViews2 = new TextView[7];
ImageView[] imageViews = new ImageView[7];
for (int j = 0; j < 7; j++) {
String viewmt = "mt" + (i + 1);
String viewtid = "tid" + (i + 1);
String viewImage = "imageView" + (i + 1);
int resIDmt = getResources().getIdentifier(viewmt, "id", getPackageName());
int resIDtid = getResources().getIdentifier(viewtid, "id", getPackageName());
int resIDImage = getResources().getIdentifier(viewImage, "id", getPackageName());
textViews1[j] = ((TextView) v.findViewById(resIDmt));
textViews2[j] = ((TextView) v.findViewById(resIDtid));
imageViews[j] = ((ImageView) v.findViewById(resIDImage));
}