从Android中的TextView拨打电话号码

时间:2014-07-06 17:58:29

标签: android textview

我正在平板电脑上测试这个小代码片段。所以我不确定它是否因此而无效。单击数字时没有任何反应。 LogCat中没有显示错误消息或日志。请看下面我的实现。:

MainActivity.java

 public void callPolice(View view){
        TextView tv = (TextView) findViewById(R.id.policeno);
        String val = tv.getText().toString();
        Intent intent = new Intent(Intent.ACTION_DIAL);
        intent.setData(Uri.parse("tel:"+val));
        startActivity(intent);
        Log.v("Calling", "Calling..... "+val);
    }

activity_main.xml中

<TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="999"
        android:textColor="#000000"
        android:textSize="13pt"
        android:textStyle="bold"
        android:id="@+id/policeno"
        android:layout_alignTop="@+id/textView2"
        android:layout_alignRight="@+id/textView5"
        android:layout_alignEnd="@+id/textView5"
        android:onClick="callPolice"/>

的AndroidManifest.xml

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

2 个答案:

答案 0 :(得分:0)

如果你想打电话,你应该使用

Intent.setAction(Intent.ACTION_CALL);  

如果您正在使用片段,则xml onclick可能无效。所以尝试实现onclick listner。在开始活动之前放置日志。

答案 1 :(得分:0)

在textview中输入 android:clickable =“true”

<TextView
    android:id="@+id/policeno"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:layout_centerVertical="true"
    android:layout_marginTop="87dp"
    android:onClick="callPolice"
    android:text="999"
    android:textColor="#000000"
    android:textSize="13pt"
    android:clickable="true"
    android:textStyle="bold" />