如何在TextView中处理drawable上的click事件?

时间:2012-11-30 07:40:15

标签: android click icons textview

我遇到与Handling click events on a drawable within an EditText中讨论的问题相同的问题,但我使用的是TextView而不是EditText。当我点击TextView时,会调用方法onTouchEvent(MotionEvent event)。是否可以仅处理图标上的点击?

2 个答案:

答案 0 :(得分:0)

我认为这个想法与描述here几乎相同:使用事件坐标并确定它们是否在drawable的范围内。如果是,请执行您的操作。我不认为TextViewEditText在这方面存在重大差异。

答案 1 :(得分:0)

我认为使用TextViewImageView会更好。当然,它会导致更复杂的布局结构,但我更喜欢XML文件中的两个小部件,而不是too much Java code dealing with the widgets

<TextView
    android:id="@+id/text"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_toLeftOf="@+id/iv"
    android:text="@string/long_text"
    android:textSize="22sp" />

<ImageView
    android:id="@id/iv"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"
    android:contentDescription="@string/app_name"
    android:src="@drawable/btn_go" />