Android 当用户点击textview时,而不是当活动开始时,我如何进行活动调用?

Android 当用户点击textview时,而不是当活动开始时,我如何进行活动调用?,android,phone-call,Android,Phone Call,我有一个信息活动,当用户点击列表项时,它将进入这个活动(信息)。我想添加那个号码(在信息活动中)。当用户单击此活动(信息)中的号码时,它将呼叫。但现在它在click listener上不起作用。当我从列表中点击项目进入信息活动,但没有打开信息活动,它将呼叫,在关闭呼叫拨号后,我可以看到信息活动。我怎样才能让它在用户单击textview时启动,而不是在活动启动时启动 <code> @Override protected void onCreate(Bundle sav

我有一个信息活动,当用户点击列表项时,它将进入这个活动(信息)。我想添加那个号码(在信息活动中)。当用户单击此活动(信息)中的号码时,它将呼叫。但现在它在click listener上不起作用。当我从列表中点击项目进入信息活动,但没有打开信息活动,它将呼叫,在关闭呼叫拨号后,我可以看到信息活动。我怎样才能让它在用户单击textview时启动,而不是在活动启动时启动

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