3

画像ボタンの外観を変更するイベントを作成したいのですが、ボタンが押されたときだけです。これまで onTouch リスナーを使用してきましたが、それは永続的に変更されるだけです。ボタンの onKyeUpListener() タイプのようなものは見つかりません。

このようなものは存在しますか?

解決した

    final ImageButton button = (ImageButton) findViewById(R.id.ImageButton01);

    button.setOnTouchListener(new View.OnTouchListener() {

        @Override
        public boolean onTouch(View v, MotionEvent event) {

            if(event.getAction() == (MotionEvent.ACTION_UP)){
                //Do whatever you want after press
            }
            else{
                //Do whatever you want during press
            }
            return true;
        }
    });
4

3 に答える 3

5

それはドキュメントにあります。XML を介して、状態ごとに異なるイメージを定義できます。

于 2010-10-26T22:51:00.900 に答える
3

手動ではなく、ボタンのドローアブルを変えてみませんか?一般に、ドローアブルは複数の状態を持つことができるため、特定の状態(フォーカスされている、選択されているなど)のドローアブルを変更すると、オペレーティングシステムがすべてを自動的に処理します。

于 2010-10-26T22:52:27.217 に答える
2

http://developer.android.com/guide/topics/ui/ui-events.htmlから:

onTouch() ... これは、ユーザーがタッチ イベントとして認定されたアクションを実行したときに呼び出されます。これには、画面上 (項目の境界内) でのプレス、リリース、または任意の移動ジェスチャが含まれます。

つまり、onTouchリリース イベントでも呼び出されます。を見てくださいMotionEvent.getAction()

于 2010-10-26T22:49:26.963 に答える