如何在android中使文本视图可点击?

时间:2011-06-03 11:46:08

标签: android

是否有可能在android中使文本视图可点击如果是,那么如何?如果不是那么将使标签可点击的方式是什么?我想用这个实现一个调用活动

private void call() {
     try {
         Intent callIntent = new Intent(Intent.ACTION_CALL);
         callIntent.setData(Uri.parse("tel:"+keywordxmlparsing.phone));
         startActivity(callIntent);
     } catch (ActivityNotFoundException activityException) {
         Log.e("dialing-example", "Call failed", activityException);
     }
 }

感谢您提前回复...

11 个答案:

答案 0 :(得分:43)

textView.setOnClickListener(new View.OnClickListener());

你试过这个吗?

答案 1 :(得分:12)

直接在XML中更容易:使用clickable = true

<TextView
                android:id="@+id/forgotPassword"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center_horizontal"
                android:layout_marginTop="10dp"
                android:text="@string/forgotPassword"
                android:onClick="forgotPassword"
                android:clickable="true"
                />

答案 2 :(得分:10)

我们还可以TextViewButton相同的点击事件&amp; ImageView

所有View的

和方法也相同。

喜欢

view.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub

            }
        });

答案 3 :(得分:6)

首先在你的java文件中按xml id

投射你的TextView
TextView tv = (TextView)findViewById(R.Id.textView1);

然后,

tv.setOnClickListener(new View.OnClickListener() {
   @Override
   public void onClick(View v) {
      // TODO Auto-generated method stub
   }
});

答案 4 :(得分:4)

试试这个:

view.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {

    }
});

答案 5 :(得分:4)

老实说,我找到了一个平面按钮,可以更好地使用RecyclerView进行操作:

<Button
android:id="@+id/btnFoo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="?android:attr/borderlessButtonStyle"/>

来源:https://stackoverflow.com/a/30884132/2328637

然后自定义按钮以适合我的布局,最后将以下内容添加到onCreate下的MainActivity.java中:

Button btnFoo = (Button) findViewById(R.id.btnFoo);
btnFoo.setOnClickListener(new View.OnClickListener() {

   @Override
   public void onClick(View v) {
      Intent intent = new Intent(MainActivity.this, FooActivity.class);
      startActivity(intent);
   }
});

答案 6 :(得分:2)

你可以设置一个onclick监听器到textview,如button.in fact button继承textview中的属性。

答案 7 :(得分:2)

在该TextView的xml中包含字段

android:onClick="functionName"

然后在与该xml关联的java文件中包含此函数

public void functionName(View view){
// do your stuff
}

答案 8 :(得分:0)

虽然很久以前你问过你的问题。但我认为达到你想要的是正确的是设置TextView xml属性android:autoLink。例如:

<TextView 
    ...
    android:autoLink="phone" />

答案 9 :(得分:0)

只需尝试一下: -

实现View.OnClickListener,然后只需应用switch case并在case中定义文本视图的id并传递intent。

示例: -

     @Override
 public void onClick(View v) {
    //TODO Auto-generated method stub

   switch (v.getId()) {
case R.id.textView:
    startActivity(new Intent(this,CalledClass.class));

    break;

default:
    break;
}

//这里textView是我选择的textView的id。

答案 10 :(得分:0)

TextView也是View Like-EditText,ListView等的派生,所以我们可以使用

textView.setOnClickListener(new View.OnClickListener());