我想我有一个相当常见的问题。
我有一个Activity,里面需要三个屏幕。问题是,它们可以/应该以两种方式滚动(水平和垂直)。由于通常不鼓励将HorizontalScrollView与普通的ScrollView一起嵌入,并且通常会导致比它解决的问题更多的问题,那么有没有其他方法可以实现这一点,而不必编写您自己的SurfaceView类并手动处理滚动?
到目前为止,我尝试过的方法是:将HorizontalScrollView和ScrollView相互嵌入。它的效果并不好。虽然水平滚动几乎是完美的(几乎是因为我在开始滚动之前仍然可以看到第二个屏幕的一部分),但垂直滚动根本不起作用(正如预期的那样),并且部分覆盖了屏幕。
我不能将它拆分为三个不同的活动,因为代码需要更改/更新所有三个页面中的视图。
<com.tseng.widget.TalentLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/TalentLayout"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal"
>
... many dozen of other views here ...
</com.tseng.widget.TaletLayout>这基本上就是三个水平页面中每一个页面的布局。
实现这一点的最佳方式是什么?如果除了编写自己的滚动功能之外没有其他解决方案,有没有什么好的教程或代码可以让我看看呢?
发布于 2010-10-27 04:01:19
据我所知,创建同时水平和垂直滚动的滚动视图是不可能的。至少不是那么容易。然而,您可以使用合并,但滚动仅限于水平或垂直...
如下所示:
<?xml version="1.0" encoding="utf-8"?>
<merge
android:id="@+id/merge"
xmlns:android="http://schemas.android.com/apk/res/android">
<ScrollView android:id="@+id/ScrollView01"
<HorizontalScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
<TextView android:id="@+id/Text"
</TextView>
</HorizontalScrollView>
</ScrollView>
</merge>https://stackoverflow.com/questions/4026227
复制相似问题