【发布时间】:2014-05-22 10:01:02
【问题描述】:
我正在构建一个可扩展的列表视图。
一旦用户对子项目进行选择,它就会重定向到 web 视图。当用户返回列表视图页面时,我想保留选择。
这是我正在使用的代码:
final ExpandableListAdapter expListAdapter = new ExpandableListAdapter(this, groupList, laptopCollection);
expListView.setAdapter(expListAdapter);
expListView.setOnChildClickListener(new OnChildClickListener()
{
public boolean onChildClick(ExpandableListView parent, View v,int groupPosition, int childPosition, long id)
{
final String selected = (String) expListAdapter.getChild(groupPosition, childPosition);
LinearLayout llChildItem = (LinearLayout) v.findViewById(R.id.llChildItem);
llChildItem.setBackgroundResource(R.drawable.nav_selected);
Intent intent = new Intent(getApplicationContext(),MyWebView.class);
intent.putExtra("url","http://www.google.com");
intent.putExtra("groupPosition", groupPosition);
intent.putExtra("childPosition", childPosition);
startActivity(intent);
return true;
}
});
我正在通过 Intent 传递 groupPosition 和 childPosition。有什么方法可以让我以编程方式调用onChildClick 方法并传递这两个参数,以保持所做的选择?
【问题讨论】:
-
查看 performClick() 和 performItemClick();
-
@ElDuderino performItemClick() 在可扩展列表视图上工作吗?能否请您分享一个工作示例的链接 - 谢谢
-
listView.setOnItemClickListener( .... ); listView.performItemClick(listView.getChildAt(position), position, listView.getItemIdAtPosition(position))...应该就是这样。
-
position - 指的是 childPosition 还是 groupPosition ?
-
我会说组位置,但也许你必须使用 listView.getExpandableListPosition(flatListPosition), getPackedPositionType(), getPackedPositionGroup(), getPackedPositionChild();
标签: android android-listview expandablelistview onclicklistener expandablelistadapter