0
私は、Androidアプリでカスタマイズされたビューをいくつか持っています。私はこれらをHorizontalScrollViewに追加して、それらを飛ばしたりスワイプしたりできます。Android Eclipse HorizontalScrollViewフレンド/スワイプのヘルプ
誰かが私にこのことを喜ばせることができますか?
ありがとうございました。
私は、Androidアプリでカスタマイズされたビューをいくつか持っています。私はこれらをHorizontalScrollViewに追加して、それらを飛ばしたりスワイプしたりできます。Android Eclipse HorizontalScrollViewフレンド/スワイプのヘルプ
誰かが私にこのことを喜ばせることができますか?
ありがとうございました。
あなたのコードでこれを試してください。 OnGestureListenerとOnClickListenerを実装する必要があります。
private GestureDetector gestureDetector;
View.OnTouchListener gestureListener;
gestureDetector = new GestureDetector(this);
gestureListener = new View.OnTouchListener() //
{
@Override
public boolean onTouch(View v, MotionEvent event) //
{
if (gestureDetector.onTouchEvent(event)) //
{
return true;
}
return false;
}
};
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
float velocityY) //
{
int changeInX = (int) (e2.getX() - e1.getX());
// If the swipe was big enough, do something
if (Math.abs(changeInX) > SWIPE_MIN_DISTANCE
&& Math.abs(velocityX) > SWIPE_MIN_VELOCITY) //
{
if (velocityX > 0) //
activity.animateSwipe(true);
else
activity.animateSwipe(false);
return true;
}
else
return false;
}
public void animateSwipe(boolean right) {
TranslateAnimation anim = null;
LinearLayout layout = (LinearLayout) this
.findViewById(R.id.layoutVolume);
if (right) {
anim = new TranslateAnimation(0.0f, layout.getWidth(), 0.0f, 0.0f);
} else {
anim = new TranslateAnimation(0.0f, -layout.getWidth(), 0.0f, 0.0f);
}
anim.setDuration(250);
anim.setInterpolator(new AccelerateInterpolator(1.0f));
layout.startAnimation(anim);
}
HorizontalScrollViewがメインクラスにありますか? – mat
また、これが何を表しているかわかりません。 activity.animateSwipe(true); – mat
これはあなたの主な活動に一般的に入ります。 UIからコントローラを分離しておくためにMVCアーキテクチャを使用しますが、それはあなたの選択です。私は追加のコードを追加しました。 – Codeman