ListView
의 RowItem
에는 TextView
및 ImageView
이 포함되어 있습니다. RowItems
이 동적으로 추가됩니다.ListView의 TextView 텍스트에 따라 ImageView를 추가하는 방법
TextView
의 특정 텍스트에 ImageView
을 추가하는 방법을 알고 싶습니다. TextView
는 "TITLE1"는 ImageView
"R.drawable.ic_title1을"의미에
RowItem
에 추가해야합니다.
은 여기 내 코드
class SessionItemAdapter extends ArrayAdapter<Map> {
final ArrayList<Map> values;
Context context;
SessionItemAdapter(Context context, ArrayList<Map> values) {
super(context, R.layout.session_list_layout_row, values);
this.values = values;
this.context = context;
}
@Override
public View getView(final int position, View view, ViewGroup parent) {
LayoutInflater inflater = (LayoutInflater) parent.getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View rowView = inflater.inflate(R.layout.session_list_layout_row, parent, false);
TextView tv = (TextView) rowView.findViewById(R.id.stepTime);
final int rowId = (Integer) values.get(position).get("id");
int beepStringId = getResources().getIdentifier("exercise_typ_" + values.get(position).get("type"), "string", getPackageName());
rowView.setTag(rowId);
tv.setText(getResources().getString(beepStringId));
ImageView image =(ImageView) rowView.findViewById(R.id.imageView2);
switch(position){
case 1 : image.setImageResource(R.drawable.ic_title1);
break;
case 2 : image.setImageResource(R.drawable.ic_title2);
break;
}
ImageButton deleteSession = (ImageButton) rowView.findViewById(R.id.session_item_del);
deleteSession.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
/*if (!startStopToggle.isChecked()) {*/
sessionAdapter.remove(values.get(position));
sessionAdapter.notifyDataSetChanged();
}
});
return rowView;
}
//in your adapter getAllPlayers() would be something like this
public List<String> getAllPlayers() {
List<String> list = new ArrayList<String>();
for (Map item : values) {
int beepStringId = context.getResources().getIdentifier("exercise_typ_"
+ item.get("type"), "string", context.getPackageName());
String str = context.getResources().getString(beepStringId);
list.add(str);
}
return list;
}
}
내가 position
으로 Switch
문으로 그것을 시도하지만 그건 단지 위치가 case
작성 이잖아에있는 RowItem
에 ImageView
을 설정합니다.
왜 완전히 새로운 개체를 구현합니까? 모든 데이터가 이미 어댑터에 있습니다. – Marcus