单击数字Textview Box并拨打该号码

时间:2016-06-14 09:05:48

标签: android numbers call

我想点击数字在Textview框上调用这个号码,我知道我需要把我的文本框点击它已经完成了,我需要做一个代码来点击它做一些东西但是我需要帮助那个部分

这是我的XML java类:

<TextView
    android:layout_width="wrap_content"
    android:layout_height="0dp"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:text="Telefone/Fax :  244892501"
    android:id="@+id/textView8"
    android:textSize="20dp"
    android:layout_below="@+id/textView7"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:layout_weight="1"
    android:clickable="true" />

这是我的Java类

private static Button button1;

ImageView ivImageFromUrl;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_second);
    ivImageFromUrl = (ImageView) findViewById(R.id.iv_image_from_url);

    Picasso.with(getApplicationContext()).load("http://i67.tinypic.com/20k9n42.jpg").into(ivImageFromUrl);

    button1 = (Button)findViewById(R.id.button1);

button1.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {
        Intent NameOfTheIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.docdroid.net/Vh3yPiJ/contatos-lubrifuel.pdf.html"));
        startActivity(NameOfTheIntent);
    }


   })
   ;}

 }

4 个答案:

答案 0 :(得分:2)

只需这样做:

TextView numTextView = (TextView) findViewById(R.id.textView8);
numTextView.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {
       Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("tel: 244892501"));
       context.startActivity(intent);
    }
});

当然,请将此添加到您的清单中:

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

答案 1 :(得分:1)

试试这个:

button1.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {
           Intent callIntent = new Intent(Intent.ACTION_CALL);
           callIntent.setData(Uri.parse("tel:123456789"));
           startActivity(callIntent);    
    }
})

不要忘记在Manifest中添加权限

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

答案 2 :(得分:0)

试试这个......它为我工作

Intent callIntent = new Intent(Intent.ACTION_CALL);
callIntent.setData(Uri.parse("tel:" +textView8.getText().toString()));
startActivity(callIntent);    

答案 3 :(得分:0)

您的代码有点乱......

但是给你一个小例子,你可以解决你的问题:
你可以这样做:

<强> XML

<TextView
android:text="Telefone/Fax :  244892501"
android:id="@+id/myTextView"     
android:clickable="true"         <!--Important line-->
<!-- Your other lines -->
/>

Java类

onCreate()

TextView myTextView= (TextView)findViewById(R.id.myTextView);
myTextView.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
        //Get the phone number
        String myPhoneNr = myTextView.getText().toString();

        //Use this to extract the digits
        myPhoneNr = myPhoneNr.replaceAll("[^0-9]", "");  //Now only 244892501 remains

        //Start the call
        Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + myPhoneNr));
        startActivity(intent);
    }
});

一样NEO声明:
不要忘记许可:

<uses-permission android:name="android.permission.CALL_PHONE" />
祝你好运!