2016-06-14 29 views
0

我想點擊號碼在Textview框中調用號碼,我知道我需要把我的文本框點擊它的已經完成,我需要做一個代碼來把onclick做有些東西,但我需要幫助。點擊數字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); 
    } 


    }) 
    ;} 

} 

回答

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

Thx bro它工作得很好。 Cya! –

+0

請接受我的答案,如果它的工作,讓人們知道你的問題已經解決。 :) –

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);  
    } 
}) 

而且不要忘記添加許可,清單

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

嘗試......它的工作對我來說

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

這將無法正常工作。該Uri現在將包含**電話:電話/傳真:244892501 ** – Strider

+0

給文本視圖輸入類型爲Numbers並嘗試 – Mathew

+0

是或更改'android:text'我知道你的解決方案的作品,但不是如何你已經發布了它。比你應該**添加**到你的文章。 – Strider

0

你代碼有點亂...

但給UA的u能如何解決烏爾問題小例子:
U可以做這樣的事情:

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

祝你好運!