0
我有超过20+ TextView
和ImageView
在我的活动是这样的:绑定自定义属性到Android内部视图
<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
有一个相关的代码。
现在我试图处理子视图的click事件,逻辑非常简单,通过不同的代码从服务器获取数据。
我知道一般的方法也许这样的:
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;
.....
}
}
然后,我有太多的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());
}
这是可能的,或者任何其他的选择?
什么是需要seperatwly创建视图你为什么不能尝试我们一些类型的列表视图或GridView的婴儿 –
由于一些电网将覆盖在多个列或行,所以我必须手动添加这些视图。 – hguser
你可以把痛苦画出你的应用程序应该如何...我会给你最好的想法 –