您可以按照以下步骤编写代码实现您的需求:

  1. 在XML布局文件中添加一个水平布局,其中包含一个TextView和一个Button:
<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal">
    
    <TextView
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
    
    <Button
        android:id="@+id/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="选择联系人" />
        
</LinearLayout>
  1. 在Activity中找到TextView和Button,并为Button设置点击事件监听器:
public class MainActivity extends AppCompatActivity {
    private static final int PICK_CONTACT_REQUEST = 1;
    
    private TextView textView;
    private Button button;
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        textView = findViewById(R.id.textView);
        button = findViewById(R.id.button);

        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                // 创建一个隐式的Intent,指向联系人界面
                Intent intent = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI);
                startActivityForResult(intent, PICK_CONTACT_REQUEST);
            }
        });
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);

        if (requestCode == PICK_CONTACT_REQUEST && resultCode == RESULT_OK) {
            // 获取用户选择的联系人
            Uri contactUri = data.getData();
            String[] projection = new String[]{ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME};
            Cursor cursor = getContentResolver().query(contactUri, projection, null, null, null);
            if (cursor != null && cursor.moveToFirst()) {
                // 获取联系人姓名并显示在TextView上
                String name = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));
                textView.setText(name);
                cursor.close();
            }
        }
    }
}
  1. onActivityResult方法中,处理从联系人界面返回的结果,获取选择的联系人姓名,并将其显示在TextView上。

这样,当您点击Button时,将跳转到电话簿的联系人界面,选择一个联系人后,该联系人的姓名将显示在TextView上

Androidstudio在一行水平的TextView和Button中当点击Button时界面跳转到电话簿的联系人界面点击任一联系人TextView界面上出现该联系人的姓名代码怎么编写?

原文地址: https://www.cveoy.top/t/topic/iI8u 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录