Trung tâm Tin học – ĐH KHTN ĐỌC DANH BẠ Trong bài viết này mình se demo cho các bạn cách đọc danh bạ trong Virtual Devices và hiển thị lên trên 1 ListView Đầu tiên các bạn tạo 1 Project như sau: Project name: TestListView Build Target: Android 2.3.3 Application name: TestListView Package name: com.dac.TestListView Create Activity: ListViewActivity4 Tiếp theo, muốn đọc được danh bạ các bạn khai báo trong AndroidManifest.xml dòng màu vàng như sau: <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.androidbook.commoncontrols" android:versionCode="1" android:versionName="1.0"> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".ListViewActivity4" android:label="@string/listview4_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> <uses-sdk android:minSdkVersion="3" /> <uses-permission android:name="android.permission.READ_CONTACTS"></uses-permission> </manifest> Các bạn sữa tên file main.xml lại thành list.xml và thiết kế giao diện như sau: <?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="0dip" android:layout_weight="1" /> Lập trình Android – http://laptrinhdidong.vn Page 1 Trung tâm Tin học – ĐH KHTN <Button android:id="@+id/btn" android:onClick="doClick" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Submit Selection" /> </LinearLayout> Và cuối cùng các bạn code file ListViewActivity4.java như sau: package com.dac.TestListView import android.app.ListActivity; import android.content.ContentUris; import android.database.Cursor; import android.net.Uri; import android.os.Bundle; import android.provider.ContactsContract; import android.util.Log; import android.view.View; import android.widget.ListView; import android.widget.SimpleCursorAdapter; public class ListViewActivity4 extends ListActivity { private static final String TAG = "ListViewActivity4"; private static final Uri CONTACTS_URI = ContactsContract.Contacts.CONTENT_URI; private SimpleCursorAdapter adapter = null; private ListView lv = null; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.list); lv = getListView(); String[] projection = new String[]{ContactsContract.Contacts._ID, ContactsContract.Contacts.DISPLAY_NAME}; Cursor c = managedQuery(CONTACTS_URI, projection, null, null, ContactsContract.Contacts.DISPLAY_NAME); String[] cols = new String[]{ContactsContract.Contacts.DISPLAY_NAME}; int[] views = new int[] {android.R.id.text1}; adapter = new SimpleCursorAdapter(this, android.R.layout.simple_list_item_multiple_choice, c, cols, views); this.setListAdapter(adapter); lv.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE); Lập trình Android – http://laptrinhdidong.vn Page 2 Trung tâm Tin học – ĐH KHTN } public void doClick(View view) { if(!adapter.hasStableIds()) { Log.v(TAG, "Data is not stable"); return; } long[] viewItems = lv.getCheckedItemIds(); for(int i=0; i<viewItems.length; i++) { Uri selectedPerson = ContentUris.withAppendedId( CONTACTS_URI, viewItems[i]); Log.v(TAG, selectedPerson.toString() + " is checked."); } } } Và sau cùng các bạn debug như sau: (các bạn phải tạo 1,2 contact trên máy ảo mới thấy được hoạt động đầy dủ của ứng dụng) Mọi ý kiến đóng góp các bạn vui lòng gữi bài viết về forum trang web www.laptrinhdidong.vn . Rất mong nhận được sự phản hồi của các bạn. Lập trình Android – http://laptrinhdidong.vn Page 3 Trung tâm Tin học – ĐH KHTN Lập trình Android – http://laptrinhdidong.vn Page 4 . Trung tâm Tin học – ĐH KHTN ĐỌC DANH BẠ Trong bài viết này mình se demo cho các bạn cách đọc danh bạ trong Virtual Devices và hiển thị lên trên 1 ListView Đầu tiên các bạn tạo 1 Project như sau: Project. 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:id="@android:id/list" android:layout_width="fill_parent" android:layout_height="0dip" android:layout_weight="1" /> Lập trình Android – http://laptrinhdidong.vn