Android电话号码活动中的呼叫功能
问题描述:
我正在开发具有电话号码的联系人页面的Android应用程序。我给在下面的XML文件中的电话号码:Android电话号码活动中的呼叫功能
<TextView
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceSmall"
android:text="1-869-270-9099"
android:textSize="11sp"
android:textColor="#104082"
android:textStyle="normal"
android:layout_width="wrap_content"
android:id="@+id/textView4"
android:layout_x="72dp"
android:layout_y="160dp"/>
我创造了AlertDialog
和被点击的电话号码时,警报dialog
将如下编程所示:
@Override
protected Dialog onCreateDialog(int id) {
switch (id) {
case (R.id.textView4):
Builder builder = new AlertDialog.Builder(this);
builder.setMessage("Do you want to Call?");
builder.setCancelable(false);
builder.setPositiveButton("Call", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
//Do Calling a Number
}
});
builder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
});
AlertDialog dialog = builder.create();
dialog.show();
}
return super.onCreateDialog(id);
}
public void onClick(View v) {
switch(v.getId()){
case (R.id.textView4):
showDialog(R.id.textView4);
break;
}
}
这里我问题是在onClick
“PositiveButton”方法中实现“拨打电话号码”功能。请帮助我如何使用SampleCode/Links将xml
文件中存在的号码拨到DialPad上。
答
也许是这样的:
Intent call = new Intent(Intent.ACTION_DIAL);
call.setData(Uri.parse("tel:" + findViewByid(R.id.textView4).getText());
startActivity(call);
答
的积极button
的onClick
里面只写:
Intent dial = new Intent();
dial.setAction("android.intent.action.DIAL");
dial.setData(Uri.parse("tel:"+dial_number));
startActivity(dial);
注: 不要忘记添加AndroidManifest.xml
文件中此权限:
<uses-permission android:name="android.permission.CALL_PHONE"/>
答
您可以照片直接发动意图让在你的XML file.Like此提到的数字拨号键盘:
String contact=findViewById(R.id.textView4).getText().toString();
Intent callIntent = new Intent(Intent.ACTION_CALL);
callIntent.setData(Uri.parse("tel:" + contact));
startActivity(callIntent);
完全正确....工作正常...感谢分享.... –
你也可能希望在/res/values/strings.xml中有这样的电话号码:' 1-869-270-9099 '并在你的TextView上 '。然后只要你需要代码中的数字,就调用'getResources()。getString(R.string.phone_num)'。 通过这种方式,维护应用程序和更改电话号码变得更加容易,因为您只需要将其从strings.xml中更改并自动更新到应用程序需要它的任何位置。 –