2016-12-16 31 views
1

我正在开发一个应用程序,其中有一个活动,我需要绑定列表视图和列表视图项目的onClick,我需要展开布局它下面,该布局应该包括一个列表视图和两个按钮我成功将列表绑定到列表视图,但我没有得到如何将项目绑定到内部列表视图。任何人都可以帮助我,并提前致谢。如何将列表绑定到单击列表项目时展开的布局

以下是将列表绑定到内部列表视图的代码。

public class BindToRecurrenceList extends BaseAdapter{ 
Context context; 
private ArrayList<String> list; 
private Activity activity; 
private LinearLayout expandable_rec_list; 
private TextView tvRecurListContent; 
private ListView itemList; 
ImageButton imgAddItems,imgExportItems; 
String Item; 
public BindToRecurrenceList(Activity activity, ArrayList<String> list) { 
    super(); 
    this.activity = activity; 
    this.list = list; 
} 
@Override 
public int getCount() { 
    return list.size(); 
} 
@Override 
public Object getItem(int position) { 
    return list.get(position); 
} 
@Override 
public long getItemId(int position) { 
    return 0; 
} 
@Override 
public View getView(final int position, View convertView, ViewGroup parent) { 
    if(convertView==null){ 
     LayoutInflater inflate=activity.getLayoutInflater(); 
     convertView = inflate.inflate(R.layout.list_rec_expandable, null); 
     expandable_rec_list=(LinearLayout) convertView.findViewById(R.id.expandable_rec_list); 
     itemList=(ListView) convertView.findViewById(R.id.item_list_rec); 
     imgAddItems=(ImageButton) convertView.findViewById(R.id.add_item_rec); 
     imgExportItems=(ImageButton) convertView.findViewById(R.id.export_items); 
     convertView.setTag(new ViewHolder(itemList, imgAddItems,imgExportItems, expandable_rec_list,expandable_rec_list.getVisibility())); 
    } 
    tvRecurListContent=(TextView) convertView.findViewById(R.id.recurr_list); 
    ImageView DelRecList=(ImageView) convertView.findViewById(R.id.del_rec_list); 

    tvRecurListContent.setText(list.get(position)); 
    ArrayList<String> labels=new ArrayList<String>(); 
    for(int i=0;i<5;i++){ 
     labels.add("item "+i); 
    } 
    ArrayList<Integer> qty=new ArrayList<Integer>(); 
    for(int i=0;i<5;i++){ 
     labels.add(i+".00"); 
    } 
    ArrayList<String> qtyType=new ArrayList<String>(); 
    for(int i=0;i<5;i++){ 
     labels.add("Piece"); 
    } 
    BindingRecurrenceListItems adapter=new BindingRecurrenceListItems(activity,labels,qty,qtyType); 
    itemList.setAdapter(adapter); 
    imgExportItems.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      AlertDialog.Builder alert=new AlertDialog.Builder(activity); 
      alert.setMessage(activity.getString(R.string.rec_list_items_export)+" \""+list.get(position)+" \""+activity.getString(R.string.rec_list_dialog)); 
      alert.setPositiveButton(activity.getString(R.string.proceed), new DialogInterface.OnClickListener() { 
       @Override 
       public void onClick(DialogInterface dialog, int which) { 
        activity.startActivity(new Intent(activity, PurchasesActivity.class)); 
       } 
      }); 
      alert.setNegativeButton(activity.getString(R.string.frag_btn_cancel), new DialogInterface.OnClickListener() { 
       @Override 
       public void onClick(DialogInterface dialog, int which) { 
       } 
      }).show(); 
     } 
    }); 


    return convertView; 
} 
} 

回答

0

为此使用ExpandableListView。

this link可能会有所帮助。