Android多个页面滑动视图实现

Android设计中,有时需要实现一组页面进行滑动,例如在一个Activity视图中,顶部是一个导航栏,底部是菜单栏 ,中间是3个可以滑动的区域,其功能跟android系统的Launcher的workspace相似 。

程序运行界面效果:

Android多个页面滑动视图实现

  

Android多个页面滑动视图实现

 

Android多个页面滑动视图实现



以下为核心代码:

布局文件: res/layout/main.xml:

<?xml version="1.0" encoding="UTF-8"?>
<RelativeLayout
    xmlns:Android="http://schemas.android.com/apk/res/android"
    Android:layout_width="fill_parent"
    Android:layout_height="fill_parent"
    Android:orientation="vertical">
    <RelativeLayout
        xmlns:Android="http://schemas.android.com/apk/res/android"
        Android:id="@+id/view_top"
        Android:orientation="horizontal"
        Android:layout_width="fill_parent"
        Android:layout_height="wrap_content"
        Android:layout_alignParentTop="true"
        Android:gravity="center">
        <TextView
            Android:text="head"
            Android:textSize="15pt"
            Android:layout_width="fill_parent"
            Android:layout_height="wrap_content" />
        <ImageView
            Android:layout_width="wrap_content"
            Android:layout_height="wrap_content"
            Android:src="@drawable/btn_star_1"
            Android:id="@+id/imageView1"
            Android:layout_alignParentTop="true"
            Android:layout_alignParentRight="true"></ImageView>
        <TextView
            Android:layout_width="wrap_content"
            Android:id="@+id/textView_header"
            Android:text="center page"
            Android:layout_height="wrap_content"
            Android:textAppearance="?android:attr/textAppearanceMedium"
            Android:layout_centerVertical="true"
            Android:layout_alignParentLeft="true"
            Android:layout_marginLeft="78dp"></TextView>
    </RelativeLayout>
    <RelativeLayout
        xmlns:Android="http://schemas.android.com/apk/res/android"
        Android:id="@+id/view_bottom"
        Android:orientation="horizontal"
        Android:layout_width="fill_parent"
        Android:layout_height="wrap_content"
        Android:layout_alignParentBottom="true"
        Android:gravity="center">
        <TextView
            Android:text="footer"
            Android:textSize="15pt"
            Android:layout_width="fill_parent"
            Android:layout_height="wrap_content" />
    </RelativeLayout>
    <com.xxx.ScrollLayout
        xmlns:Android="http://schemas.android.com/apk/res/android"
        Android:id="@+id/ScrollLayoutID"
        Android:layout_width="fill_parent"
        Android:layout_height="fill_parent"
        Android:orientation="vertical"
        Android:layout_above="@id/view_bottom"
        Android:layout_below="@id/view_top">
        <LinearLayout
            Android:background="#ffffffff"
            Android:layout_width="fill_parent"
            Android:layout_height="fill_parent">
            <Button
                Android:layout_width="wrap_content"
                Android:layout_height="wrap_content"
                Android:text="Left" />
        </LinearLayout>
        <LinearLayout
            Android:background="#ffffffff"
            Android:layout_width="fill_parent"
            Android:layout_height="fill_parent">
            <Button
                Android:layout_width="wrap_content"
                Android:layout_height="wrap_content"
                Android:text="Center" />
        </LinearLayout>
        <LinearLayout
            Android:background="#ffffffff"
            Android:layout_width="wrap_content"
            Android:layout_height="wrap_content">
            <Button
                Android:layout_width="wrap_content"
                Android:layout_height="wrap_content"
                Android:text="Right" />
        </LinearLayout>
    </com.xxx.ScrollLayout>
</RelativeLayout>

自定义控件 ScrollLayout.java  :

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wysfws.html