gpt4 book ai didi

java - 打电话点击查看文字

转载 作者:行者123 更新时间:2023-12-01 23:40:23 25 4
gpt4 key购买 nike

好吧,我已经查看并尝试理解我发现的其他一些代码,但没有任何结果。我试图让用户单击 TextView 并将其带到手机拨号器。

这是 Java:

public class Info extends Activity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.moreinfo);
Button appoint =(Button) findViewById(R.id.btnAppoint);
TextView phone =(TextView) findViewById(R.id.phoneTxt);
String url = phone.getText().toString();
Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse(url));
appoint.setOnClickListener(new OnClickListener () {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
startActivity(new Intent(Info.this, EmailContact.class));
}
});

phone.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent callIntent = new Intent(Intent.ACTION_CALL);
callIntent.setData(Uri.parse("tel:+"+phone.getText().toString().trim()));
startActivity(callIntent );
}
});
}
}

我还设置了 android: clickable = true 所以我不知道这是否是问题所在。任何帮助将不胜感激!

最佳答案

更改 phone.getText().toString().trim() 以使用提供给 onclick 方法的 View 对象:

phone.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent callIntent = new Intent(Intent.ACTION_DIAL);
callIntent.setData(Uri.parse("tel:+"+((TextView)arg0).getText().toString().trim()));
startActivity(callIntent );
}
});

此外,如果您只想显示已加载电话号码的拨号器,则您使用了错误的 Intent 操作,Intent.ACTION_DIAL 而不是 Intent.ACTION_CALL将显示拨号器。您使用的 Intent.ACTION_CALL 实际上会发起电话调用,为了使其正常工作,您需要向 list 中添加适当的权限:

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

关于java - 打电话点击查看文字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18047898/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com