0

ユーザーが画面に触れるたびに画像を変更したいのですが。ユーザーに画面をタップしてもらいたいのですが、画像は毎回変更され、5回目のタッチで、テキストが追加された元の画像にループバックします。

私は見ました

指がそれに触れているときにのみ変更するようにImageButtonを設定するにはどうすればよいですか?

IUeventsとStateListdrawableの両方を試しました。タッチするたびに(画面のどこでも)実際に画像を変更する方法がわかりませんでした。

4

2 に答える 2

1

ImageViewを拡張するCustomクラスを作成する必要があります。これで、このimageviewが画面全体に表示されます。

> First store the path/location of images into an array/list etc.
> In custom class implement the onTouch event.
> create the counter object in this custom class.
> now in onTouch check in down event that check the counter value with array size if counter==array.length()-1 then set counter as 0 otherwise increment in counter object.
> now get the path of the image and set into the imageview as background
于 2011-09-23T07:07:01.663 に答える
1

そして、なぜ通常のImageViewを使用できないのですか?これを行う:

ArrayList<Integer> picList = new ArrayList<Integer>(); 
// populate the list with the int value of the pictures in drawable.
picList.add(R.drawable.apple);
picList.add(R.drawable.horse);
//etc
int touches = 0;
int loop = 0;
ImageView picture = (ImageView) findViewById(R.id.your_picture);
picture.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
           if (touches < 4)
                v.setBackgroundDrawable(picList.get(touches));
                touches++;
           } else {
                touches = 0;
                loop = 1;
                v.setBackgroundDrawable(picList.get(touches));
           }
           if (loop = 1){
           // Create a TextView and set the text or make it in the xml with Visible="Gone" and make is visible here.
           }
    });
于 2011-09-23T07:27:18.530 に答える