我有以下 item.xml -
<LinearLayout
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TextView
android:id="@+id/txtTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<Button
android:id="@+id/[id required here for click event.]"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
使用此布局模板,我在后面的代码中创建了多个项目 -
public Item(string title, Button btn)
{
Text = title;
Button = btn;
}
public override View GetView(int position, View convertView)
{
var item = Items[position];
var view = convertView;
var contentItem = (Item)item;
view = _inflater.Inflate(Resource.Layout.ListViewContentItem, null);
var title = view.FindViewById<TextView>(Resource.Id.txtTitle);
var btn = view.FindViewById<Button>([button id??]);
title.Text = contentItem.Text;
btn = contentItem.Button;
return view;
}
我的理解是 id 必须是唯一的,那么如何创建具有唯一 id 的按钮以便我可以访问它们的点击事件?
我的代码必须能够处理多个项目的创建,每个项目都有自己的按钮。
一只甜甜圈
湖上湖
呼啦一阵风
相关分类