0

フォーラムを検索しましたが、問題に対する具体的な回答やわかりやすい回答が見つかりませんでした。

Imagebutton 画像をギャラリーから選択した画像に変更したいと思います。できれば、アプリケーションを閉じた後も画像を変更したままにする必要があります。

ボタンの XML は次のとおりです。

<ImageButton
        android:id="@+id/eat"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:adjustViewBounds="true"
        android:background="@drawable/eat"
        android:clickable="true"
        android:longClickable="true"
        android:scaleType="fitCenter" />

サウンドを再生するための Java コードは、OnClick メソッドを使用してここにあります。

    ImageButton eat = (ImageButton) findViewById (R.id.eat);
    eat.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            mp1.start();
        }
    });

ここにも OnLongClick メソッドを追加したいと思います (OnClick は既に取得されており、画像の置き換えは少し異なるはずです) が、正しい方法が見つかりませんでした。少しご案内いただけますか?

4

1 に答える 1

0

画像の onLongClickListener から true を返す必要があります。

このような:

eat.setOnLongClickListener(new OnLongClickListener() {

    @Override
    public boolean onLongClick(View v) {
        //do something
        return true;
    }

});

eat.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        mp1.start();
    }
});

これは、アクションが longClickListener で既に処理されていることを意味するため、画像の onClickListener が呼び出される原因にはなりません。

于 2014-08-25T08:19:35.723 に答える