我是一名Java程序猿,最近想学习Android应用开发,于是下载了OSC的Android版本客户端源码。然后参照客户端的功能,自己动手实践。先参照实现了用RadioButton实现的底部Tab栏,以及头部自定义的标题栏,源码中这块的实现也挺好理解。但是,关于展示不同Tab页中的Layout挺迷惑的。 我看源码中是使用了一个自定义的ScrollLayout,并把几个主要界面的Activity都include进来。当然,如果我照搬过来也是一点一点可以做到的。但是我的问题来了:
- 假使我现在不实现滑动功能,那我众多的Tab对应的Activity如何切换和实现。
- 底部的Tab对应的Activity一般是如何搭配的。我(Android菜鸟中的极品)目前以Web开发的经验可以联想到两种:
另一种是每个Tab对应的Activity都是单独的,都引入共同的自定义标题栏和底部Tab栏。
关于第二种,觉得又不好,代码重复多,涉及的处理也多,比较繁琐。不知道第一种如果不使用自定义的ScrollLayout控件的话该用什么实现,因为目前我对Android相关的知识还比较浅薄,有些控件具体能实现什么样的效果和用途还不是特明了解。
MainActivity界面 main.xml layout内容
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <include layout="@layout/titlebar"/> <!--此处不知道如何写才好--> <include layout="@layout/footbar"/> </LinearLayout>
标题栏titlebar.xml layout内容
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width="fill_parent" android:background="@drawable/head_bg" android:layout_height="40dip"> <ImageView android:id="@+id/imageView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_marginLeft="5.0dip" android:background="@drawable/head_home_normal" android:layout_centerVertical="true"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Tab1" android:id="@+id/textView" android:layout_toRightOf="@id/imageView" android:layout_centerVertical="true" android:textColor="#ffffff" android:layout_marginLeft="5.0dip"/> </RelativeLayout>
Tab栏 footbar.xml layout内容
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="bottom"> <RadioGroup android:layout_width="fill_parent" android:layout_height="wrap_content" android:gravity="center" android:background="@drawable/toolbar_bg" android:layout_gravity="bottom" android:orientation="horizontal"> <RadioButton android:layout_width="match_parent" android:layout_height="match_parent" android:text="Tab1" android:button="@null" android:layout_weight="1" android:gravity="center" android:id="@+id/radioButton1"/> <RadioButton android:layout_width="match_parent" android:layout_height="match_parent" android:text="Tab2" android:button="@null" android:id="@+id/radioButton" android:gravity="center" android:layout_weight="1" android:layout_gravity="center"/> <RadioButton android:layout_width="match_parent" android:layout_height="match_parent" android:text="Tab3" android:button="@null" android:gravity="center" android:layout_weight="1" android:id="@+id/radioButton2" android:layout_gravity="center"/> <RadioButton android:layout_width="match_parent" android:layout_height="match_parent" android:text="Tab4" android:button="@null" android:gravity="center" android:layout_weight="1" android:id="@+id/radioButton3" android:layout_gravity="center"/> </RadioGroup> </LinearLayout>
这是运行效果。
Android菜鸟,请多指教。
楼主有答案了吗 同菜鸟 求此问题解决方案