0

配列からコンテンツを取得するボタンを表示する Gridview があります。これらのボタンをクリックまたは押したときに、これらのボタンの背景色を変更したいと思います。onClick と onTouch を試してみたところ、メソッドには入っていますが、色は背景が設定されていません。コードの何が問題になっていますか? 助けてください。

private class ImageAdapter extends BaseAdapter {
    private Context mContext;

            btnView.setOnClickListener(new View.OnClickListener() {
                public void onClick(View v) {
                    Log.d("onClick","go");
                    btnView.setBackgroundColor(Color.rgb(12,11,12));
                    btnView.setBackgroundColor(Color.parseColor("#3614B3")); 

                    Intent data = new Intent();
                    data.setData(Uri.parse("PictureStyle" + position));
                    setResult(RESULT_OK, data);

                 }
             });

            btnView.setOnTouchListener(new View.OnTouchListener() {
                public boolean onTouch(View v, MotionEvent event) {
                    Log.d("OnTouch","go2");
                    btnView.setBackgroundColor(Color.parseColor("#3614B3")); 
                    return false;

                 }
             });


            btnView.setOnTouchListener(new View.OnTouchListener() {

                public boolean onTouch(View v, MotionEvent event) {
                    // TODO Auto-generated method stub
                    Log.d("Touch listener",String.valueOf(position));
                    btnView.setBackgroundColor(0xff00ff00); 
                    Log.d("Touch listener","set");
                    if ( event.equals(MotionEvent.ACTION_DOWN) ) {
                        btnView.setBackgroundColor(0xffff0000); 

                                    }
                    return false;
                }
            });
4

2 に答える 2

3

v.setBackgroundColor(Color.rgb(12,11,12));あなたのonClickで試してみてください

于 2012-06-05T09:49:15.580 に答える
0

GridView.setOnItemClickListener各ボタンに clickListener を登録する代わりに使用することをお勧めします

于 2012-06-05T09:54:16.840 に答える