簡體   English   中英

從imageView檢查drawable id

[英]Check drawable id from imageView

嗨,大家好我有一個帶有imageview的情況,我動態設置了drawable源和文本,就像這樣,這個問題太類似了

title.setText(items.get(position).getTitle());
icon.setImageResource(this.icons.getIcon(items.get(position).getIcon()));

在imageview上使用onClickIcon的xml,我需要知道哪些圖像id drawable來檢查它是否等於我的

<ImageView android:id="@+id/image" 
        android:onClick="onClickIcon"
         />

活動

public void onClickIcon(View v) {

    int id =  v.getId();//instead i need the int of the drawable image

    switch (id) {
    case R.drawable.info:
        //do something
        break;
    case R.drawable.links_icon:
        //do something
        break;
    case R.drawable.map_icon:
        //do something
        break;
    default:
        break;
    }
}

提前謝謝你們,我也很抱歉我的英語,下次我試着改進它。

干杯

你可以使用setTag()方法..

ImageViewsetTag(R.id.ImageView,this.icons.getIcon(items.get(位置).getIcon()));

並在onClick方法中使用getTag(R.id.ImageView)..

這是另一個類似於CapDroid答案的解決方法:

您可以使用ImageView標記創建自己的getImageResource()getDrawableId()函數。

在onCreate()中:

imageView0 = (ImageView) findViewById(R.id.imageView0);
imageView1 = (ImageView) findViewById(R.id.imageView1);
imageView2 = (ImageView) findViewById(R.id.imageView2);

imageView0.setTag(R.drawable.apple);
imageView1.setTag(R.drawable.banana);
imageView2.setTag(R.drawable.cereal);

然后,如果你願意,可以使用簡單的函數獲取drawable id:

private int getImageResource(ImageView iv) {
    return (Integer) iv.getTag();
}

我希望這對你有所幫助,它確保我的工作更輕松。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM