2

onTouchEvent がアクティブなときにボタンを有効にするのに問題があります。私のアプリでは、ユーザーは画面上の任意の場所を押してテキストを表示し、画面を押しながらボタンを押すことになっています。問題は、onTouchEvent がアクティブな間、ボタンが機能しないことです。onTouchEvent がアクティブなときにボタンを有効にする方法はありますか?

ボタンと onToch のコードは次のようになります。

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

                theWord.setText(((global_rules) getApplication()).NewWord(getApplicationContext()));

        }
    });
}


public boolean onTouchEvent(MotionEvent event){
    switch (event.getAction()){
        case MotionEvent.ACTION_DOWN:
            if(enableTouch) {
                holdToView.setVisibility(View.INVISIBLE);
                theWord.setVisibility(View.VISIBLE);
            }
            break;

        case MotionEvent.ACTION_MOVE:
            break;

        case MotionEvent.ACTION_UP:
            if(enableTouch) {
                holdToView.setVisibility(View.VISIBLE);
                theWord.setVisibility(View.INVISIBLE);
            }
            break;
    }
    return false;
}

編集、.xml を追加

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/bg_1">

<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Rätt"
    android:id="@+id/correct_btn"
    style="@style/btn_style2"
    android:layout_alignTop="@+id/skip"
    android:layout_alignLeft="@+id/holdToView"
    android:layout_alignStart="@+id/holdToView" />


<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:text=""
    android:id="@+id/theWord"
    android:layout_centerHorizontal="true"
    android:layout_centerVertical="true"
    android:visibility="invisible"
    android:textStyle="bold"
    android:textSize="40dp"
    android:textColor="#ffffff" />

</RelativeLayout>
4

0 に答える 0