Android 联系人列表选择器

Android contact list picker

我有 2 个活动:

第一个 - 只是一个起始页面,它有一个转到第二个的按钮 activity

第二个 activity - 将打开联系人列表并允许用户选择联系人并检索他们的号码 - 他们将被保存以备后用。

我的问题是我不知道如何让它在第二个 activity 中工作。所有示例都只有 Main/first activity 中的联系人列表,我对此很陌生,不明白如何将其移动到第二个。

我现在拥有的代码

Main.java

import android.content.Intent;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;


public class MainActivity extends ActionBarActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);


Button b = (Button) this.findViewById(R.id.button1);
b.setOnClickListener(new View.OnClickListener(){

    @Override
    public void onClick (View v){
    Intent i = new Intent(MainActivity.this, Contacts.class);
        startActivity(i);
    }
});

}
}

主要XML

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"     android:layout_width="match_parent"
android:layout_height="match_parent"     android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"     tools:context=".MainActivity">

<TextView android:text="@string/hello_world"     android:layout_width="wrap_content"
    android:layout_height="wrap_content" />

<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Settings"
    android:id="@+id/button1"
    android:layout_centerVertical="true"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="93dp"/>

</RelativeLayout>

联系人java

import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;


public class Contacts extends ActionBarActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_contacts);
}


}

联系人XML

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin" tools:context="akh.seniorproj.Contacts">



</RelativeLayout>

检查这个解决方案:How to call Android contacts list? 这几乎是您需要做的,但您应该使用光标搜索数字的名称。