【发布时间】:2012-04-25 15:57:21
【问题描述】:
所以我在屏幕右侧有这个按钮(ImageView 和onClick 方法),当我将它拉到左边时,它会延伸到SeekBar,您可以在其中选择一天中的时间。为了创建这个,我制作了一个ScrollView 和一个水平的LinearLayout,左侧是透视视图,右侧是“按钮”+SeekBar(主要在屏幕之外)。 “按钮”有一个 OnTouch 和 OnClick 监听器。
在 onTouch 中,滚动视图会根据手指移动的位置来平滑滚动到正确的位置。当您移动小于某个阈值并释放时,就会调用 onClick。
在 onClick 中,我已将滚动视图告知 smoothScrollTo / scrollTo / fullScroll。 fullScroll 从来没有工作过。 smoothScrollTo 大部分时间都在一台设备上工作(HTC Desire 与 Android 2.2.2),但从未在另一台设备(三星 Galaxy Tab(旧款)与 Android 2.2)上的 ONCLICK(?)上工作。 scrollTo 有时适用于两种设备...我确信 onClick 在我记录它启动时被调用,并且在告诉 ScrollView 滚动之后直接调用。
我已尝试将 scrollTo 以可运行和延迟可运行的形式发布到 ScrollView:
scrollView.postDelayed(new Runnable() {
@Override
public void run() {
scrollView.scrollTo(left, 0);
Log.d("SomeTag", "The scroller should scroll to: "+left);
}
}, 200);
但这与不发布它一样频繁(有时)...
我很困惑。我习惯于使用 Android 并习惯于不同的设备表现不同,但我不习惯在同一设备上“有时”工作而“有时”不工作...任何帮助将不胜感激!
【问题讨论】:
标签: android onclick scrollview