java - 单击某些 ListView 项目时如何调用特定号码

标签 java android

我已经完成了最困难的部分。我设置了一个 ListView,当单击 Item 时,手机就会开始调用电话。

当我点击第一个 ListView 项目时,拨号器会瞬间显示标题 First Item,然后继续显示一系列随机数字,这与字符串有关。

本质上,我想要的是当我单击 ListView 中的特定项目时调用某个电话号码。

这可能吗?如果是这样,怎么办?

希望这是有道理的,如果需要任何进一步的说明,请告诉我。

ListView simpleList;
    final String contactList[] = {"First Item", "Second Item", "Third Item"};

    simpleList = (ListView)findViewById(R.id.contact_list);
    ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this, R.layout.activity_contact_list_view, R.id.textView, contactList);
    simpleList.setAdapter(arrayAdapter);

    simpleList.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @SuppressLint("MissingPermission")
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            String value = (String)parent.getItemAtPosition(position);

            Intent callIntent = new Intent(Intent.ACTION_CALL);
            callIntent.setData(Uri.parse("tel:" + value));

            startActivity(callIntent);

        }
    });

最佳答案

好的,如果您有位置,您可以将其用作数组内元素的索引

 final String contactList[] = {"First Item", "Second Item", "Third Item"};
 final String phonesList[] = {"First Item", "Second Item", "Third Item"};

使用position从数组中获取联系人:

public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
    //String value = (String)parent.getItemAtPosition(position);
    String contact = contactList[position];

    Intent callIntent = new Intent(Intent.ACTION_CALL);
    callIntent.setData(Uri.parse("tel:" + phonesList[position])); //***
    startActivity(callIntent);
}

关于java - 单击某些 ListView 项目时如何调用特定号码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49543883/

相关文章:

java - 无法在Java中创建sqlite数据库

java - 为什么我收到错误 "the Method Is Undefined for the type"?

android - 在另一个应用程序中终止一个应用程序的服务

java - 如何将 bufferedreader 复制到 bufferedwriter 中以获取 Android 中的 pdf 文件

android - 在现有Android项目中升级Retrofit和OKHttp的原因

java - 为什么 Gson 不使用嵌套转义 JSON 字符串解析我的文档?

java - NameValuePair、HttpParams、HttpConnection 参数在登录应用程序的服务器请求类上已弃用

带点的单词的 Java 正则表达式

java - 处理 Volley 中的错误(有 future )?

android - android中动态创建的自定义进度对话框