根据我的previous question的答案,我正在制作一个高度自定义的滚动列表,我希望捕获子视图偏移(让基本的Android功能处理轻弹并在过度滚动时弹跳等)。
然而,偏移量总是返回0.想法非常重要
package com.example.svexample
import android.annotation.TargetApi;
import android.app.ActionBar.LayoutParams;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.os.Build;
import android.util.Log;
import android.view.View;
import android.widget.ScrollView;
public class ScrollViewTest {
private static final String TAG = ScrollViewTest.class.getSimpleName();
private ScrollView sv;
private View v;
@TargetApi(Build.VERSION_CODES.HONEYCOMB)
public ScrollViewTest(Context context) {
v = new View(context);
v.setBackgroundColor(Color.BLUE);
v.setBottom(800); v.setRight(400);
sv = new ScrollView(context);
sv.setBackgroundColor(Color.RED);
sv.setBottom(400); sv.setRight(400);
//The next two lines don't seem to help...
//LayoutParams lp = new LayoutParams(400, 600);
//sv.setLayoutParams(lp);
sv.addView(v);
}
public void draw(Canvas canvas){
sv.draw(canvas);
v.draw(canvas);
Log.d(TAG, "Scroll is: " + sv.getScrollY());
}
}
答案 0 :(得分:0)
原来我需要将我的应用onTouchEvent
提供给ScrollView
,以便它是互动的(因为它是以编程方式创建的)。我会假设Android UI元素会自动执行此操作,但在这种情况下显然不会。