在Android Studio中,要将点击监听器设置到TextInputEditText的右侧/末尾drawable上,可以按照以下步骤进行操作:
<com.google.android.material.textfield.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/editText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:drawableEnd="@drawable/ic_clickable_icon"
android:hint="Enter text" />
</com.google.android.material.textfield.TextInputLayout>
在上述代码中,我们使用了android:drawableEnd
属性来设置右侧drawable,并指定了一个可点击的图标资源ic_clickable_icon
。
TextInputEditText editText = findViewById(R.id.editText);
editText.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
final int DRAWABLE_RIGHT = 2;
if (event.getAction() == MotionEvent.ACTION_UP) {
if (event.getRawX() >= (editText.getRight() - editText.getCompoundDrawables()[DRAWABLE_RIGHT].getBounds().width())) {
// 在此处处理点击右侧drawable的逻辑
return true;
}
}
return false;
}
});
在上述代码中,我们通过setOnTouchListener
方法为TextInputEditText设置了一个触摸监听器。在监听器的onTouch
方法中,我们判断了触摸事件的类型和位置,如果触摸位置在右侧drawable的范围内,则执行相应的逻辑。
这是一个设置点击监听器到TextInputEditText右侧/末尾drawable的方法。通过这种方式,你可以实现在用户点击右侧drawable时触发相应的操作。
领取专属 10元无门槛券
手把手带您无忧上云