通过onActivityResult()先跳转到联系人界面,然后把传回来的手机号显示到应用的EditText上...
生活随笔
收集整理的這篇文章主要介紹了
通过onActivityResult()先跳转到联系人界面,然后把传回来的手机号显示到应用的EditText上...
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
<pre name="code" class="plain"><pre name="code" class="plain">public class MainActivity extends Activity {/**輸入框*/private EditText et;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);et = (EditText) findViewById(R.id.et);}//點擊跳轉到聯(lián)系人界面public void click(View v){Intent intent = new Intent();intent.setAction("android.intent.action.PICK");intent.setData(Uri.parse("content://com.android.contacts/contacts"));startActivityForResult(intent, 5);}@Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) {super.onActivityResult(requestCode, resultCode, data);if(requestCode==5){Uri uri = data.getData();Cursor cursor = getContentResolver().query(uri, new String[]{"_id"}, null, null, null);cursor.moveToNext();int id = cursor.getInt(0);//聯(lián)系人的Id//再通過ID查號碼Cursor cursor2 = getContentResolver().query(Phone.CONTENT_URI, //獲取所有聯(lián)系人的URLnew String[]{"data1"}, //表示要查號碼"contact_id=?", //通過聯(lián)系人的ID查new String[]{id+""}, null);cursor2.moveToNext();String number = cursor2.getString(0);//獲取聯(lián)系人號碼et.setText(number);}}
}
在小米手機上測試有問題,聯(lián)系人顯示不出來,不知道為什么?
這是布局
轉載于:https://www.cnblogs.com/android-yus/p/5372889.html
總結
以上是生活随笔為你收集整理的通过onActivityResult()先跳转到联系人界面,然后把传回来的手机号显示到应用的EditText上...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MySql设置外网访问
- 下一篇: JAVA基础-常用的其他类