0
xmlレイアウトファイルに表示されるイメージの場所である "@ drawable/image"というイメージの場所が返されています。ImageViewを変更します。文字列を含むsrc
私の質問は、コードからandroid:src = "@ drawable/image"の文字列を変更することは可能ですか?
編集:
<ImageView
android:id="@+id/imageuni"
android:layout_width="50dip"
android:layout_height="50dip"
android:src="@drawable/no_image"/> <!--Change this part in code-->
私はCustomBinderでSimpleAdapterを使用しています:
SimpleAdapter adapter = new SimpleAdapter(SearchActivity.this,leaderList, R.layout.search_entry, new String[] {
"rankId","name","location","image"}, new int[] {R.id.rankId,R.id.name,R.id.location,R.id.imageuni});
adapter.setViewBinder(new CustomViewBinder());
setListAdapter(adapter);
バインダーコード:
class CustomViewBinder implements SimpleAdapter.ViewBinder {
public boolean setViewValue(View view, Object inputData, String textRepresentation) {
int id = view.getId();
String data = (String) inputData;
switch (id) {
case R.id.imageuni:
populateImage(view, data);
break;
case R.id.location:
populateLocation(view, data);
break;
case R.id.name:
populateName(view, data);
break;
}
return true;
}
public void populateImage(View view, String imageData) {
ImageView uniImage = (ImageView) view.findViewById(R.id.imageuni);
uniImage.setImageDrawable(Drawable.createFromPath(imageData));
}
public void populateLocation(View view, String data) {
TextView locationTxt = (TextView) view.findViewById(R.id.location);
locationTxt.setText(data);
}
public void populateName(View view, String data) {
TextView dateTxt = (TextView) view.findViewById(R.id.name);
dateTxt.setText(data);
}
}
私はIDを取得しています行項目のイメージの名前を取得する文字列を作成します。たとえば、最初のイメージの名前は、drawable resフォルダにあるu1.jpgです。
[Androidイメージを文字列値から設定](http://stackoverflow.com/questions/4313007/setting-android-images-from-string-value)の可能な複製 – Shaishav