5

私はアンドロイドアプリケーションを作成しています。ここに imageview があります。私の目標は、画像上で指を動かしたときにデータベースから次の画像を取得することです

float nPicturePositionM = 0;

public boolean onTouch(View v, MotionEvent event) {
    boolean aHandledL = false;
    if (event.getAction() == MotionEvent.ACTION_MOVE) {
        float nNewPicturePosL = event.getX();
        if (nPicturePositionM < nNewPicturePosL) {
            nPicturePositionM = nNewPicturePosL;
            GetPictures(true);
        } else {
            nPicturePositionM = nNewPicturePosL;
            GetPictures(false);
        }
        aHandledL = true;
    }

    return aHandledL;

    //return false;
}

タッチイベントを使用してどのように処理できますか? ギャラリーで行うように、画像をスライドさせる必要があります

4

2 に答える 2

13

まず、xml で imageview を宣言します。

<ImageView
    android:id="@+id/imageview1"
    android:layout_width="200dp"
    android:layout_height="200dp"
    android:layout_alignParentBottom="true"
    android:layout_marginBottom="45dp"
    android:layout_centerHorizontal="true" />

次に、アクティビティでコンポーネントを初期化します。

プライベート ImageView image1;

onCreate で:

this.image1= (ImageView)this.findViewById(R.id.imageview1);
this.image1.setImageResource(R.drawable.NAMEOFIMAGE);

次のステップは、画像が「クリック」されたかどうかを検出することです。次に、オンライン データベースまたは SQLite データベースを使用して、画像または画像へのパスを保存できます。そのデータベース部分は、使用するルートに応じて最初から教える大きな部分です。

       this.image1.setOnClickListener(new View.OnClickListener() {        
        @Override
           public void onClick(View view) {
            if (view == findViewById(R.id.imageview1)) {     
                         //PUT IN CODE HERE TO GET NEXT IMAGE
            }
            }
        });

これが役立つことを願っています。それがどうなるか教えてください:)

于 2012-08-23T07:38:23.207 に答える
0

データベースから画像の配列を使用し、タッチに基づいて設定する必要があります...のように..

img.setOnTouchListener(new OnTouchListener() 
        {

            @Override
            public boolean onTouch(View arg0, MotionEvent arg1) 
            {
                    img.setImageURI(uri[pos]);
                    pos++;
                    return false;
            }
        });
于 2012-08-23T07:54:20.277 に答える