多くの画像をユーザーに表示していますが、いくつかの条件に基づいて、ドローアブルフォルダから画像を取得する必要があります。たとえば、ユーザーが性別を「男性」に設定した場合、男性のみが使用する製品の画像を表示する必要があります
4 に答える
1
if(condition)
{
image_view.getResources().getDrawable(R.drawable.male_img);
}
于 2013-02-04T12:33:17.560 に答える
0
Java アクティビティ
String gender ;
ImageView iv_image;
If (gender.equals("Male")
iv_image = (ImageView) findViewById(R.id.imageID);
else
iv_image= (ImageView) findviewbyID(R.id.anotherImageID);
xml
<ImageView
android:id="@+id/imageID"
android:layout_width="50dip"
android:layout_height="50dip"/>
于 2013-02-04T12:23:20.267 に答える
0
画像をアセットフォルダーに入れて、性別ごとに名前を付けることをお勧めします。たとえば、listwatch_male.png、listwatch_female.jpeg などです。
次に、次のコードを追加して、性別を確認し、それに応じて画像を表示できます。
String gender;
AssetManager assetMgr = null;
Vector<String> files = new Vector<String>();
assetMgr = this.getAssets();
String[] allFiles = assetMgr.list("");
if (gender.equalsIgnoreCase("Male"))
{
for (int i = 0; i < allFiles.length; i++) {
if (allFiles[i].contains("_male")) {
files.add(allFiles[i]);
}
}
}
if (gender.equalsIgnoreCase("Female"))
{
for (int i = 0; i < allFiles.length; i++) {
if (allFiles[i].contains("_female")) {
files.add(allFiles[i]);
}
}
}
for (int i = 0; i < files.size(); i++) {
//Set image
}
于 2013-02-04T13:18:04.927 に答える
-1
各画像の名前に、男性または女性であることを示すプレフィックス (またはサフィックス) を設定します。
次に、画像を取得しようとするたびに、ユーザーが男性か女性かをアプリの設定で確認し、結果に基づいてリソースを取得します。
名前で画像を取得する例:
String mDrawableName = "my_image";
String prefix=Settings.isMale()?"male_":"female_";
String newName=prefix+mDrawableName ;
int resId=getResources().getIdentifier(newName, "drawable", getPackageName());
....
于 2013-02-04T16:15:33.050 に答える