1

ボタンをクリックすると、電話のすべての連絡先の名前が記載されたリストビューのようなものが開いてくれるようなことをしたいのですが...どうすればよいですか?電話のすべての連絡先の名前を取得して文字列配列に入れる方法を知っていますが、ボタンをクリックしたときにすべての連絡先の名前のリストビューで新しいウィンドウを開くにはどうすればよいですか?

ありがとう

4

3 に答える 3

2

ボタンをクリックしたときの最初のアクティビティ:

startActivity(new Intent(this, ContactsActivity.class));

次に、ContactsActivityで:

public class ContactsActivity extends ListActivity {
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle icicle) {
            super.onCreate(icicle);
            setContentView(R.layout.contacts_view);

            ListAdapter adapter = createAdapter();
            setListAdapter(adapter);
        }

        /**
         * Creates and returns a list adapter for the current list activity
         * @return
         */
        protected ListAdapter createAdapter()
        {
            // List with strings of contacts name
            contactList = ... someMethod to get your list ...

            // Create a simple array adapter (of type string) with the test values
            ListAdapter adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, contactList);

            return adapter;
        }
    }

ContactsActivityのXMLファイル(contacts_view.xmlという名前を付けます):

 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:orientation="vertical"
     android:layout_width="fill_parent"
     android:layout_height="fill_parent"
     >
     <ListView  
         android:id="@android:id/list"
         android:layout_width="fill_parent" 
         android:layout_height="wrap_content" 
         />
     <TextView android:id="@android:id/empty"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:text="Empty set"
         />
 </LinearLayout>
于 2012-09-24T10:22:35.683 に答える
0

listActivityを使用できます

Android開発者のlistActivity

于 2012-09-24T10:12:37.277 に答える
0

ボタンをクリックすると、すべての連絡先のリストを含む新しいアクティビティ(またはListActivity)を開始する必要があります。したがってonClicklisteneronClick関数でアクティビティを開始するためのコードを記述する必要があります。

2番目のアクティビティで、たとえばリストで初期化されるCustomAdapterを作成します

class Contact
{
    private String number;
    private String name
}

ありがとう。

于 2012-09-24T10:18:24.880 に答える