[英]listview with button and call the previous step after clicking
我是android開發的新手。 我有2 ListView
。 當我在第一個ListView
上單擊一個項目時,新的數據集將顯示在第二個中。 我已經在第二個ListView
( onItemClick
)中添加了一個Button
。 使用Adapter
。 因此,當我單擊Button
(閱讀更多)時,它將加載一個新的Activity
。 因此,當我單擊“ Back
Button
我需要在上一步中加載相同的數據(listview2)。
int images[] ={R.drawable.boc, R.drawable.commercial, R.drawable.nations, R.drawable.popls};
adp = new ItemsAdapter(getActivity(), images);
menu.setAdapter(adp);
menu.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
// TODO Auto-generated method stub
TextView tv2 = (TextView) v.findViewById(R.id.listViewText);
/*ImageButton imgbtn = (ImageButton) v.findViewById(R.id.AddButton);
ImageButton imgbtn2 = (ImageButton) v.findViewById(R.id.AddInfo);
*/
switch (arg2) {
case 0:
ListAdapter adapter3 = new ListAdapter(getActivity(), boc) ;
menu2.setAdapter(adapter3);
break;
case 1:
// menu2.setAdapter(new ArrayAdapter<String>(this,
// android.R.layout.simple_list_item_1,subitems2));
ListAdapter adapter4 = new ListAdapter(getActivity(), bankcrcards) ;
menu2.setAdapter(adapter4);
break;
default:
break;
}
}
});
menu2.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
// TODO Auto-generated method stub
ImageView imgbtn1 = (ImageView) arg1.findViewById(R.id.imageView2);
imgbtn1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Toast.makeText(getActivity(), "error", Toast.LENGTH_SHORT).show();
expandableListView=new ExpandableListFragment();
FragmentTransaction transaction=getFragmentManager().beginTransaction();
transaction.setCustomAnimations( R.anim.fade_in, R.anim.fade_out);
transaction.replace(R.id.myFragement,expandableListView);
transaction.addToBackStack(null);
transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
transaction.commit();
}
});
}
});
不建議在1個活動中使用2個列表視圖,因為它可能導致流程問題(就像您現在面臨的那樣)。
如果有不同的項目,請考慮僅使用1個listview,以覆蓋以下功能(BaseAdapter的功能)以顯示正確的視圖:
@Override
public int getItemViewType(int position) {
return super.getItemViewType(position);
}
@Override
public int getViewTypeCount() {
return super.getViewTypeCount();
}
這將解決2 listview問題,然后,當單擊項目並打開新活動時,您可以保存列表視圖的實例狀態,因此當您按回時,可以使用以下示例查看如何返回到先前狀態。
祝好運
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.