ImageViewでハマった話
最近ImageViewを使用していてハマったので記事にしてみる。
ハマった時は下記のようなコードを書いていたが、if文がtrueにならずハマっていた。
ImageView v = ImageView(thiw);
v.setImageResource(R.drawable.icon);
~~~~~~~~~~~~~~~~~~~
if(v.getId() == R.drawable.icon)){
//処理
}
Android Developersにはpublic void setImageResource (int resId)と定義されていたので、
設定したresIdがgetId()で取得できると思い上記コードを書いたのだが、それが間違いで、
どうやらgetId()で取れるのはandroid:idで設定したidかsetId()で明示的に指定したIDのみらしい。
処理はsetTag()とgetTag()を使用し修正したが、ものすごく微妙な所でハマったのでこれからは気を付けたい。