如何选择多个联系人并将其传递给android中的另一个Intent

时间:2012-05-04 12:26:43

标签: android listview multipleselection

我有一个项目列表,在活动的每个项目前都有一个复选框。 use可以选择多个项目,然后这些项目应该传递给另一个intent。 我可以告诉我如何根据复选框选择识别所选项目。

我在列表

中为每个项目使用以下布局
<?xml version="1.0" encoding="UTF-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:padding="6dip" android:layout_height="?android:attr/listPreferredItemHeight">
<CheckBox
    android:id="@+id/result_icon"        
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_alignParentBottom="true"
    android:layout_marginRight="6dip"        
    android:src="@drawable/ic_launcher"/>
<TextView
    android:id="@+id/result_name"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"        
    android:layout_toRightOf="@id/result_icon"
    android:layout_alignParentRight="true"
    android:layout_alignParentTop="true"        
    android:layout_alignWithParentIfMissing="true"                
    android:gravity="center_vertical"
    android:text="Title" />
<TextView  
    android:id="@+id/result_second_line"
    android:layout_width="fill_parent"
    android:layout_height="26dip"      
    android:layout_toRightOf="@id/result_icon"
    android:layout_below="@id/result_name"
    android:layout_alignParentBottom="true"
    android:layout_alignParentRight="true"        
    android:singleLine="true"
    android:ellipsize="marquee"
    android:text="Second line" />

1 个答案:

答案 0 :(得分:0)

在这种情况下,我假设您为Check Box维护了一个ArrayList,意味着选中了哪个复选框或者未选中哪个复选框。通过这种方式,您将获得要发送给另一个活动的联系人。

现在,要将联系人值从一个活动传递到另一个活动,您可以使用Bundle

Bundle mBundle=new Bundle();
        mBundle.putStringArrayList("KeyValue", ArrayList Contact name);
        mIntent.putExtras(mBundle);

你可以在下一个活动中获得Bundle,如下面的代码。

Bundle mBundle=getIntent().getBundleExtra("KeyValue");