0

我有一个小问题。我旁边有带有 textview 的按钮。我想在触摸textview时触摸按钮(效果:触摸按钮时按钮突出显示)。有一些简单的方法可以做到这一点吗?我找不到任何合适的功能。

编辑:好的,我已经解决了我的问题。这是:

hilfeText.setOnTouchListener(new OnTouchListener() {

        public boolean onTouch(View v, MotionEvent me) {
            int action = me.getAction();
            if(action == MotionEvent.ACTION_DOWN) {
                hilfe.setPressed(true);
                return true;
            } else if (action == MotionEvent.ACTION_UP) {
                hilfe.setPressed(false);
                return true;
            }
            return false;
        }
    });
4

4 回答 4

1

您可以使用inside of调用performClick()方法。Button referenceonClickTextView

例子-

myTextView.setOnClickListner(){

    public void onClick(){
       myButton.performClick();

        --------------code

    }
}
于 2012-08-10T09:16:43.277 回答
1

你可以定义一个buttoninxml文件的点击和聚焦模式,比如`

<item android:drawable="@drawable/recordings_icon" android:state_enabled="false"></item>
<item android:drawable="@drawable/recordings_glow" android:state_enabled="true" android:state_pressed="true"/>
<item android:drawable="@drawable/recordings_shadow" android:state_enabled="true" android:state_focused="true"/>
<item android:drawable="@drawable/recordings_icon" android:state_enabled="true"/>

您可以将此文件放在目录中,名称drawables @drawable/recordings_icon是图像文件,您只需将此文件名声明为button布局 xml 文件 的背景<Button android:id="@+id/buttonActivate" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/xmlfilename" />

于 2012-08-10T09:47:18.737 回答
0

onClickListener为您的ButtonandTextView和设置一个onClick(),让它们都调用相同的函数。简单的。

于 2012-08-10T09:13:17.583 回答
0

这可能会奏效

TextView v = ...;
final Button b = ...;
v.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
       b.setFocusableInTouchMode(true);
       b.requestFocus();
       b.performClick();
    }
});
于 2012-08-10T09:17:40.757 回答