Android 当用户点击textview时,而不是当活动开始时,我如何进行活动调用?
我有一个信息活动,当用户点击列表项时,它将进入这个活动(信息)。我想添加那个号码(在信息活动中)。当用户单击此活动(信息)中的号码时,它将呼叫。但现在它在click listener上不起作用。当我从列表中点击项目进入信息活动,但没有打开信息活动,它将呼叫,在关闭呼叫拨号后,我可以看到信息活动。我怎样才能让它在用户单击textview时启动,而不是在活动启动时启动Android 当用户点击textview时,而不是当活动开始时,我如何进行活动调用?,android,phone-call,Android,Phone Call,我有一个信息活动,当用户点击列表项时,它将进入这个活动(信息)。我想添加那个号码(在信息活动中)。当用户单击此活动(信息)中的号码时,它将呼叫。但现在它在click listener上不起作用。当我从列表中点击项目进入信息活动,但没有打开信息活动,它将呼叫,在关闭呼叫拨号后,我可以看到信息活动。我怎样才能让它在用户单击textview时启动,而不是在活动启动时启动 <code> @Override protected void onCreate(Bundle sav
<code>
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.info);
String selected = getIntent().getStringExtra("selectedItem");
TextView txt = (TextView) findViewById(R.id.txthead);
txt.setText(selected);
String[] tels = { "1234", "5678" };
TextView tel = (TextView) findViewById(R.id.tel);
if (selected.equals("Istinye Park")) {
img.setImageResource(R.drawable.istnp);
tel.setText(tels[0]);
} else if (selected.equals("Kanyon Istanbul")) {
img.setImageResource(R.drawable.iconsd);
tel.setText(tels[1]);
final Intent callIntent = new Intent(Intent.ACTION_CALL);
callIntent.setData(Uri.parse("tel:+" + tel.getText().toString().trim()));
startActivity(callIntent);
tel.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
startActivity(callIntent);
}
});
}
</code>
在tel click listener中移动callIntent初始化和ststartActivityart代码:
tel.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Intent callIntent = new Intent(Intent.ACTION_CALL);
callIntent.setData(Uri.parse("tel:+" + tel.getText().toString().trim()));
startActivity(callIntent);
}
});
示例:
private TextView txt;
private TextView tel;
private ImageView img;
private String selected;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.info);
txt = (TextView) findViewById(R.id.txthead);
tel = (TextView) findViewById(R.id.tel);
img = (ImageView) findViewById(R.id.img);
selected = getIntent().getStringExtra("selectedItem");
txt.setText(selected);
String[] tels = {"1234", "5678"};
if (selected.equals("Istinye Park")) {
img.setImageResource(R.drawable.istnp);
tel.setText(tels[0]);
} else if (selected.equals("Kanyon Istanbul")) {
img.setImageResource(R.drawable.iconsd);
tel.setText(tels[1]);
}
tel.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Intent callIntent = new Intent(Intent.ACTION_CALL);
callIntent.setData(Uri.parse("tel:+" + tel.getText().toString().trim()));
startActivity(callIntent);
}
});
}
注意:在AndroidManifest.xml中添加调用权限:
<uses-permission android:name="android.permission.CALL_PHONE"/>
并从oncreate()方法中删除代码
tel.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
final Intent callIntent = new Intent(Intent.ACTION_CALL);
callIntent.setData(Uri.parse("tel:+" + tel.getText().toString().trim()));
startActivity(callIntent);
}
});