【问题标题】:Click on number Textview Box and call that number单击号码 Textview Box 并拨打该号码
【发布时间】:2016-06-14 09:05:47
【问题描述】:

我想在 Textview 框上点击号码拨打号码,我知道我需要让我的文本框可点击它已经完成,我需要做一个代码来让 onclick 做一些事情,但我需要在那部分的帮助.

这是我的 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);
    }


   })
   ;}

 }

【问题讨论】:

    标签: android numbers call


    【解决方案1】:

    只需这样做:

    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" />
    

    【讨论】:

    • 如果我的回答有效,请接受我的回答,以便人们知道您的问题已解决。 :)
    【解决方案2】:

    试试这个:

    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" />
    

    【讨论】:

      【解决方案3】:

      试试这个...它对我有用

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

      【讨论】:

      • 这行不通。 Uri 现在将包含 tel:Telefone/Fax : 244892501
      • 将文本视图输入类型设为数字并尝试
      • 是的,或者更改android:text 我知道你的解决方案有效,但不是你发布它的方式。比你应该在你的帖子中添加
      【解决方案4】:

      你的代码有点乱……

      但是给你一个小例子来说明你如何解决你的问题:
      你可以这样做:

      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" />
      

      祝你好运!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-03-09
        • 2012-03-21
        • 2010-12-21
        • 1970-01-01
        • 2017-07-10
        • 1970-01-01
        相关资源
        最近更新 更多