滚动型我有一个脚蹼:机器人:在脚蹼
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:id="@+id/ParentLayout"
xmlns:android="http://schemas.android.com/apk/res/android" style="@style/MainLayout" >
<LinearLayout android:id="@+id/FlipperLayout" style="@style/FlipperLayout">
<ViewFlipper android:id="@+id/viewflipper" style="@style/ViewFlipper">
<!--adding views to ViewFlipper-->
<include layout="@layout/home1" android:layout_gravity="center_horizontal" />
<include layout="@layout/home2" android:layout_gravity="center_horizontal" />
</ViewFlipper>
</LinearLayout>
</LinearLayout>
第一布局,和home1,由滚动视图的。 我应该如何区分翻转手势和滚动? 目前:
- 如果我删除滚动视图,我可以在
- 刷卡如果我添加滚动视图,我只能滚动。
我看到一个建议,我应该重写onInterceptTouchEvent(MotionEvent),但我不知道如何做到这一点。我的代码,在这一刻,看起来是这样的:
public class HomeActivity extends Activity {
-- declares
@Override
public void onCreate(Bundle savedInstanceState) {
-- declares & preliminary actions
LinearLayout layout = (LinearLayout) findViewById(R.id.ParentLayout);
layout.setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event)) {
return true;
}
return false;
}});
@Override
public boolean onTouchEvent(MotionEvent event) {
gestureDetector.onTouchEvent(event);
return true;
}
class MyGestureDetector extends SimpleOnGestureListener {
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
// http://www.codeshogun.com/blog/2009/04/16/how-to-implement-swipe-action-in-android/
}
}
}
可有人请指导我在正确的方向?
谢谢。
谢谢你非常快速的回答。事实上,我正在考虑一种方法来捕捉ParentLayout级别的动作事件(包含脚蹼的动作事件),并在该级别决定该动作是否为水平动作(由脚蹼考虑)或一个垂直的(要传递给滚动视图)。 这就是为什么onInterceptTouchEvent在我看来是正确的。 所以没有办法实现我心中的想法? – Manu 2010-06-13 15:14:42
我想也许我不完全确定你想要达到的目标。 home1和home2是什么,每个手势应该完成什么?你的应用应该做什么? – mtmurdock 2010-06-13 18:33:19
home1和home2布局包含每个图像按钮的数量,每个图像按钮触发一个活动。 home1和home2包含在一个名为home的布局中,该布局托管着鳍状肢。现在:当用户滑动横跨我需要显示下一个家庭布局,这是由鳍状肢完成的。但由于它们有很多图像按钮,当手机处于横向模式时,它们不适合屏幕显示,所以我需要滚动home1布局。 –
Manu
2010-06-16 08:13:37