ListView setOnItemClickListener 添加按钮时不起作用
我有一个列表视图,每行上有文本和按钮,列表视图 setOnItemClickListener// 不起作用。 是否有可能处理项目按下,然后单击不同的按钮/物品点击您需要调用 ActivityA 然后单击“只需调用”点击 ActivityB/. 有人有一个解决方案
</string></string></string,arraylist<string></string></string>
private ArrayList<string> userIDArr = null;
private ArrayList<string> userNameArr = null;
private DatabaseHelper dbHelper = null;
private ListView userListView=null;
public void onCreate/Bundle savedInstanceState/
{
super.onCreate/savedInstanceState/;
setContentView/R.layout.list_view/;
dbHelper = new DatabaseHelper/this.getApplicationContext///;
Map<string,arraylist<string>> displayMap = dbHelper.getUserListToDisplay//;
userIDArr = displayMap.get/"UserID"/;
userNameArr = displayMap.get/"FirstName1"/;
userListView = /ListView/ findViewById/R.id.listView2/;
userListView.setAdapter/new UserListAdapter/this,userIDArr//;
userListView.setOnItemClickListener/new AdapterView.OnItemClickListener// {
@Override
public void onItemClick/AdapterView<? > arg0, View arg1, int position, long arg3/ {
Toast.makeText/usersListActivity.this,
"Item in position " + position + " clicked", Toast.LENGTH_LONG/.show//;
}
}/;
}
public class UserListAdapter extends ArrayAdapter<string>
{
Activity context;
public UserListAdapter/Activity context, ArrayList<string> names/ {
super/context, R.layout.list_item, names/;
this.context = context;
}
private class ViewHolder {
public TextView UserNameAndID;
public TextView Description;
public Button UploadBtn;
}
@Override
public View getView/int position, View convertView, ViewGroup parent/ {
ViewHolder holder;
View rowView = convertView;
if /rowView == null/ {
LayoutInflater inflater = context.getLayoutInflater//;
rowView = inflater.inflate/R.layout.list_item, null, true/;
holder = new ViewHolder//;
holder.UserNameAndID = /TextView/ rowView.findViewById/R.id.User_detailsTxt/;
holder.Description = /TextView/ rowView.findViewById/R.id.User_status/;
holder.UploadBtn = /Button/ rowView.findViewById/R.id.uploadbutton/;
holder.UploadBtn.setOnClickListener/new View.OnClickListener// {
public void onClick/View v/ {
Toast.makeText/usersListActivity.this," Button clicked",Toast.LENGTH_SHORT/.show//;
}
}/;
rowView.setTag/holder/;
} else {
holder = /ViewHolder/ rowView.getTag//;
}
String s = userNameArr.get/position/+","+userIDArr.get/position/;
holder.UserNameAndID.setText/s/;
holder.Description.setText/"U r in middle"/;
return rowView;
}
}
}`
</string></string></string,arraylist<string></string></string>
没有找到相关结果
已邀请:
12 个回复
莫问
赞同来自:
石油百科
赞同来自:
此属性必须添加到最顶层布局 XML, 你在哪里提供元素 ListView.
郭文康
赞同来自:
... 您可以尝试通过添加:
对于任何类型,通常侧重于。
涵秋
赞同来自:
对所有人来说
, 所以K.
里面
.
类似的东西。
詹大官人
赞同来自:
对于每一个人
,
等等
通过以下方式:
此外,您必须添加
到主要的一个 /第一级/ 市场
小姐请别说爱
赞同来自:
并授予倾听者
, 这将罚款。
奔跑吧少年
赞同来自:
, IE
上
. 供参考,我的代码是:
还要记住,使列表布局成为
以及此按钮参数/文本使用
.
</itemlist></itemlist>
八刀丁二
赞同来自:
在按钮和父演示文稿中,添加属性
通过以下方式。
郭文康
赞同来自:
后
或者
.
卫东
赞同来自:
来自内部代表性 custome 的
.
二哥
赞同来自:
.
再次面对问题,然后添加所有子公司的可点击谎言。
</linearlayout>
董宝中
赞同来自: