2

私は10個のボタンを持つアプリを持っています。ユーザーが 1 つのボタンを押すたびに、TextView が変更されます。また、ユーザーがフォーカスを変更し、指を右に動かして次のボタンに (画面から指を離さずに) 移動すると、2 番目のボタンがフォーカスされます。

OnTouchListner をすべてのボタンに設定して試してみましたが、指を動かしてもフォーカスは最初のボタンにとどまります。

btn1.setOnTouchListener(new View.OnTouchListener() {

            public boolean onTouch(View v, MotionEvent event) {
                // TODO Auto-generated method stub
                txt1.settext("1");
                return false;
            }
        });

私の言いたいことを理解し、これを手伝ってくれることを願っています。

ありがとう

編集:

それを行うアプリケーションを見つけました。ここにビデオがありますので、私が何を意味するかを視覚化できます。マウス (この場合は指) を動かすと、ボックスのフォーカスがどのように変化するかに注目してください。

http://www.youtube.com/watch?v=MRVFpNrBmsA&feature=youtu.be

4

1 に答える 1

-1

onTouch() で開始するには、イベントを処理する必要があります...

何かのようなもの

        public boolean onTouch(View v, MotionEvent event) {

            if(event.getAction() == MotionEvent.ACTION_HOVER_ENTER) {
               txt1.settext("1");
            } else if(event.getAction() == MotionEvent.ACTION_HOVER_EXIT){
               txt1.settext("0");
            }
            return true;
        }

それらがチェックするのに適切なアクションであるかどうかはわかりませんが、アイデアを提供するだけです.

また、true を返す必要があると思います。そうしないと、イベントが処理されず、スタックしてしまいます。

于 2012-08-04T21:18:50.663 に答える