これどうやってするの?
何か:
final View view=FLall.getChildAt(i);
if (view.getType()==ImageView) {
...
}
何らかの奇妙な理由でAsahiの提案(タグを使用)を使用できない場合、私の提案は次のようになります。
if (view instanceof ImageView) {
ImageView imageView = (ImageView) view;
// do what you want with imageView
}
else if (view instanceof TextView) {
TextView textView = (TextView) view;
// do what you want with textView
}
else if ...
私は次を試してみましたが、うまくいきました:
View view=FLall.getChildAt(i);
Log.i("ViewName", view.getClass().getName());
この質問をチェックする他の人にとっては、instanceof
が機能しない場合があります(理由はわかりません!)、たとえば、ビュータイプがImageView
またはImageButton
(私はこの状況をテストした)かどうかを確認したい場合、あなたはこの方法を使用してスキャンします:
//v is your View
if (v.getClass().getName().equalsIgnoreCase("Android.widget.ImageView")) {
Log.e("imgview", v.toString());
imgview = (ImageView) v;
} else if (v.getClass().getName().equalsIgnoreCase("Android.widget.ImageButton")) {
Log.e("imgbtn", v.toString());
imgbtn = (ImageButton) v;
}
そのためにタグを使用できます: http://developer.Android.com/reference/Android/view/View.html でset/getTagメソッドを参照してください