Android 中关于层的设计
在CSS的页面设计中,经常使用到层的概念,比如使用position:absolute可以实现页面中各元素之间互相的位置精确定位,而在Android 中,同样可以使用FrameLayout布局进行界面的布局设计,其中使用layout_gravity属性,可以表明在该布局空间中,各子控件的摆放的位置,下图是一个使用FrameLayout布局的界面示意图,其中包含了三个不同的子控件

下图则是其垂直剖面图:
下面是实现的Android 代码:
android:layout_width="300dp"
android:layout_height="200dp">
<!—最下面的子控件,位置是底端靠右对齐 -->
<View android:layout_gravity="bottom|right"
android:layout_width="100dp"
android:layout_height="150dp" />
<!—中间的子控件,位置是顶端靠左对齐 -->
<View android:layout_gravity="top|left"
android:layout_width="200dp"
android:layout_height="175dp" />
<!—最顶端的子控件,位置是顶端靠左对齐—>
<View android:layout_gravity="top|left"
android:layout_width="100dp"
android:layout_height="match_parent" />
</FrameLayout>
如何控制滚动的内容
接下来,我们看下在Android 中,如何实现控制滚动的内容显示。在通过浏览器浏览的网页中,浏览器中有自带的滚动条,让用户可以自由上下拖动进行观看。而在Android中,默认并不提供滚动条,但不少控件中都提供了滚动的功能,比如listview和EditText文本框等,而且可以在界面布局外再嵌套一层ScrollView或者HorizontalScrollView。
此外,还可以使用一些view中的scroll方法,比如View.scrollTo或者象小插件
Scroller(http://developer.android.com/reference/android/widget/Scroller.html)等,对于水平布局界面的滚动(比如图库的左右滚动),则可以使用象一些很不错的开源的实现方法去解决(比如http://android-developers.blogspot.com/2011/08/horizontal-view-swiping-with-viewpager.html一文中介绍的)。
下图是在一个scrollview中包含了一个显示文本的区域,图中讲解了其相关位置关系

相关的实现代码如下:
android:layout_width="match_parent"
android:layout_height="match_parent">
<!-- the scrollable content -->
<TextView android:layout_gravity="bottom|right"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="32dp"
android:textSize="48sp"
android:text="The\nquick\nbrown\nfox\njumps\nover..." />
</ScrollView>