私は20以上を持ってTextView
おりImageView
、私の活動では次のようになっています:
<GridLayout id="layout">
<TextView android:id="@+id/t1" android:layout_width="wrap_content" .../>
<TextView android:id="@+id/t2" android:layout_width="wrap_content" .../>
......
</GridLayout>
それぞれTextView
またはImageView
関連するコードがあります。
ここで、子ビューのクリック イベントを処理しようとしました。ロジックはかなり単純で、別のコードでサーバーからデータをフェッチします。
私はおそらくこれの一般的な方法を知っています:
findViewById("layout").setOnClickListener(this);
@Override
public void click(View v){
switch(v.getId()){
case R.id.t1 :
doSearch(1);
break;
case R.id.t2 :
doSearch(2);
break;
.....
}
}
次に、 s が多すぎcase
ます。
View
次に、おそらく次のように、コードを直接バインドできるかどうか疑問に思います。
<TextView android:id="@+id/t1" android:layout_width="wrap_content" xx:code="1" .../>
<TextView android:id="@+id/t2" android:layout_width="wrap_content" xx:code="2" .../>
次に、この方法でイベントを処理できます。
@Override
public void click(View v){
doSearch(v.getCode());
}
これは可能ですか、それとも他の選択肢はありますか?