在ListView中拨号

时间:2014-05-31 07:41:59

标签: android

我有一个基本的应用程序,它显示了项目的列表视图,当点击时会生成一个吐司,说你点击了....现在我希望它在点击时拨打给定的电话号码。这是代码

    CustomClickListener listener = new            CustomClickListener();
    tableView.setClickListener(listener);
    tableView.addBasicItem("Example 1", "Summary text 1");
    tableView.addBasicItem("Example 2", "Summary text 2");
    tableView.addBasicItem("Example 3", "Summary text 3");
    tableView.addBasicItem("Example 4", "Summary text 4");
    tableView.addBasicItem("Example 5", "Summary text 5");
    tableView.addBasicItem("Example 6", "Summary text 6");
    tableView.addBasicItem("Example 7", "Summary text 7");
    tableView.addBasicItem("Example 8", "Summary text 8");  
    tableView.addBasicItem("Example 9", "Summary text 9");
    tableView.addBasicItem("Example 10", "Summary text 10");
    tableView.addBasicItem("Example 11");
}

private class CustomClickListener implements ClickListener {

    @Override
    public void onClick(int index) {
        Toast.makeText(Example1Activity.this, "item clicked: " + index, Toast.LENGTH_SHORT).show();

1 个答案:

答案 0 :(得分:0)

可能重复:How to make a phone call programmatically?

Intent intent = new Intent(Intent.ACTION_CALL);

intent.setData(Uri.parse("tel:" + phoneNumber));
context.startActivity(intent);

不要忘记向您的清单添加相关权限:

<uses-permission android:name="android.permission.CALL_PHONE" />

在您的情况下,它可能如下所示:

private class CustomClickListener implements ClickListener {

    @Override
    public void onClick(int index) {
        Intent intent = new Intent(Intent.ACTION_CALL);

        // I don't know anything about your custom tableView...
        String phoneNumber = tableView.getItemAt(index).getPhoneNumber();

        intent.setData(Uri.parse("tel:" + phoneNumber);
        ExampleActivity.this.startActivity(intent);
    }
}