0

指と一緒に動かすために何ができるかを知る必要がありますがLinearLayout、Y 軸ではなく X 軸だけを動かしたいです。

移動が終わったら、「指を上に」すると、LinearLayout元の X 位置に戻ります。

どうすればこれを行うことができますか?

4

1 に答える 1

1

ll が線形レイアウトの名前であると仮定します。

    ll.setOnTouchListener(new OnTouchListener() {

        float lastX;

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

            View item = v;

            switch(event.getAction())
            {
            case MotionEvent.ACTION_DOWN:
                lastX = event.getX();
                break;
            case MotionEvent.ACTION_MOVE:
                item.scrollBy((int) (event.getX()-lastX), 0);
                lastX = event.getX();
                break;
            case MotionEvent.ACTION_UP:
                item.scrollTo(0, 0);

            }
            return false;
        }
    });
于 2013-11-04T18:27:18.987 に答える