这篇文章主要说的是android中的UI设定。先看真题效果图,说明。本程序参考新浪微博,图片为猫扑图片。

程序只有最基本的模版,没有任何内容。

点击效果图

这布局为顶部+中间内容+底部模式,现在很多布局都采用这种模式。或者九宫图布局

1:首先我们先实现顶部,代码如下:
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/main_tab_banner"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/bg_title"
android:paddingLeft="10dip"
android:paddingRight="10dip">

<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left|center_vertical"
android:padding="8dip"
android:text="返回"/>

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="标题内容"
android:textColor="#000000"
android:textSize="18dip"/>

<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right|center_vertical"
android:padding="8dip"
android:text="前进"/>
</FrameLayout>

这里的TextView可以用一张图片或者一个按钮代替,看个人需要。

2:实现底部。底部采用TabHost,效果图:

代码如下:
<LinearLayout
android:id="@+id/main_tab"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:background="@drawable/bg_foot"
android:gravity="center"
android:orientation="horizontal">

<TabHost
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/main_tab2"
android:layout_width="fill_parent"
android:layout_height="fill_parent">

<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">

<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="0.0dip"
android:layout_weight="1.0"/>

<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="0.0"
android:visibility="gone"/>

<RadioGroup
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:background="@drawable/bg_footbar"
android:gravity="center_vertical"
android:orientation="horizontal">

<RadioButton
android:id="@+id/radio_button1"
style="@style/tab_style"
android:layout_marginTop="2.0dip"
android:drawableTop="@drawable/ico_zy01"
android:text="主页"/>

<RadioButton
android:id="@+id/radio_button2"
style="@style/tab_style"
android:layout_marginTop="2.0dip"
android:drawableTop="@drawable/ico_dp01"
android:text="地盘"/>

<RadioButton
android:id="@+id/radio_button3"
style="@style/tab_style"
android:layout_marginTop="2.0dip"
android:drawableTop="@drawable/ico_tt01"
android:text="贴帖"/>

<RadioButton
android:id="@+id/radio_button4"
style="@style/tab_style"
android:layout_marginTop="2.0dip"
android:drawableTop="@drawable/ico_gd01"
android:text="更多"/>
</RadioGroup>
</LinearLayout>
</TabHost>
</LinearLayout>

底部有很多做法,这里只是纯模版。

3:把顶部和底部加起来。
<LinearLayout
android:id="@+id/main_tab_container"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_above="@id/main_tab"
android:layout_below="@id/main_tab_banner"
android:background="#FFFFE0">

<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="30dip"
android:text="中间内容"/>
</LinearLayout>

最后我们的整体代码就出来了。
<?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">

<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/main_tab_banner"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/bg_title"
android:paddingLeft="10dip"
android:paddingRight="10dip">

<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left|center_vertical"
android:padding="8dip"
android:text="返回"/>

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="标题内容"
android:textColor="#000000"
android:textSize="18dip"/>

<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right|center_vertical"
android:padding="8dip"
android:text="前进"/>
</FrameLayout>

<LinearLayout
android:id="@+id/main_tab"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:background="@drawable/bg_foot"
android:gravity="center"
android:orientation="horizontal">

<TabHost
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/main_tab2"
android:layout_width="fill_parent"
android:layout_height="fill_parent">

<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">

<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="0.0dip"
android:layout_weight="1.0"/>

<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="0.0"
android:visibility="gone"/>

<RadioGroup
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:background="@drawable/bg_footbar"
android:gravity="center_vertical"
android:orientation="horizontal">

<RadioButton
android:id="@+id/radio_button1"
style="@style/tab_style"
android:layout_marginTop="2.0dip"
android:drawableTop="@drawable/ico_zy01"
android:text="主页"/>

<RadioButton
android:id="@+id/radio_button2"
style="@style/tab_style"
android:layout_marginTop="2.0dip"
android:drawableTop="@drawable/ico_dp01"
android:text="地盘"/>

<RadioButton
android:id="@+id/radio_button3"
style="@style/tab_style"
android:layout_marginTop="2.0dip"
android:drawableTop="@drawable/ico_tt01"
android:text="贴帖"/>

<RadioButton
android:id="@+id/radio_button4"
style="@style/tab_style"
android:layout_marginTop="2.0dip"
android:drawableTop="@drawable/ico_gd01"
android:text="更多"/>
</RadioGroup>
</LinearLayout>
</TabHost>
</LinearLayout>

<LinearLayout
android:id="@+id/main_tab_container"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_above="@id/main_tab"
android:layout_below="@id/main_tab_banner"
android:background="#FFFFE0">

<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="30dip"
android:text="中间内容"/>
</LinearLayout>

</RelativeLayout>

styles.xml文件代码
<?xml version="1.0" encoding="UTF-8"?>
<resources>

<style name="tab_style">
<item name="android:textSize">9.0dip</item>
<item name="android:ellipsize">middle</item>
<item name="android:gravity">center</item>
<item name="android:background">@drawable/radio_bg</item>
<item name="android:layout_width">fill_parent</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:layout_margin">2.0dip</item>
<item name="android:button">@null</item>
<item name="android:singleLine">true</item>
<item name="android:layout_weight">1.0</item>
</style>

</resources>

radio_bg.xml代码
<?xml version="1.0" encoding="UTF-8"?>
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true" android:state_enabled="true" android:drawable="@drawable/home_btn_bg_s"/>
<item android:state_enabled="true" android:state_pressed="true" android:drawable="@drawable/home_btn_bg_s"/>
<item android:state_enabled="true" android:state_checked="true" android:drawable="@drawable/home_btn_bg_d"/>

</selector>

源码下载http://115.com/file/bhqy968k# Test.7z.建议用400*800分辨率测试

转载请注明出处:小左程序 http://xzuo.cnblogs.com/

转载于:https://www.cnblogs.com/hnrainll/archive/2011/11/15/2250460.html

android主流UI布局相关推荐

  1. Android应用开发(1)---Android五大UI布局的特有属性

    Android五大UI布局的特有属性 Android五大UI布局 1. LinearLayout 线性布局 2. RelativeLayout 相对布局 3. FrameLayout 帧布局,空白布局 ...

  2. android 流行布局,Android流行UI布局——底部导航(BottomNavigationView+ViewPager+Fragment)...

    前言: Android端采用底部导航栏的APP非常多,比如微信.微博.支付宝...等等,这也不能说是盲目学习iOS,毕竟好东西大家都可以用,各家操作系统也都在博采众长,互相学习.Android端的底部 ...

  3. android 实现论坛界面,android界面开发之主流UI布局范例

    这篇文章主要说的是android中的UI设定.先看真题效果图,说明.本程序参考新浪微博,图片为猫扑图片. 程序只有最基本的模版,没有任何内容. 点击效果图 这布局为顶部+中间内容+底部模式,现在很多布 ...

  4. 【Android】UI布局边距、对齐

    UI设计中常用到的padding.margin和align,区别和运用:还有不同布局的对齐方式 边距 padding paddingXXX:对于当前组件而言,组件内的内容(如文本内容)距离当前组件XX ...

  5. android 模板 ui布局,Android UI布局

    一.线性布局-LinearLayout(至上而下布局) 其中 android:orientation="vertical"意思为垂直 方向的线性布局,此处的"vertic ...

  6. android 商城ui布局,Android UI布局

    1. 线性布局(LinerLayout) 1) android:orientation(设置方向的属性)两个方向的重要属性(vertical,horizontal) 2) 方向上的比重属性(layou ...

  7. 【Android】UI布局之线性布局(登录界面代码)

    1.布局管理 组件在activity中呈现的方式,包含组件大小.间距.对齐方式 Android提供了两种布局的实现方式: .在xml配置文件中声明,通过setContentView(R.layout. ...

  8. android 今日头条布局,Android今日头条UI适配完善版

    前言 众所周知 android的碎片化一直困扰着开发者,我们要花很多的时间去做UI适配的工作.主流的适配方案有两种 1.今日头条适配 2.smallestWidth适配.具体的实现点击上述连接查看. ...

  9. android ui布局适配,Android适配全面总结(一)----屏幕适配

    前言 Android适配是一个老生常谈的问题,很多程序员觉得很恶心,不愿意做适配,但是又不得不做.然后老板说,这位兄弟,做好了,今天晚饭给你加个鸡腿,然后程序员开始找各种资料,忙活起来了,最终在苦逼的 ...

最新文章

  1. CVPR2020:三维点云无监督表示学习的全局局部双向推理
  2. web前端培训:本期教程CSS 三大特性
  3. php如何实现根据地区内筛选,PHP区块查询实现方法分析
  4. java冒泡排序找最大的值_(13)數組操作:遍歷、輸出最大值、冒泡排序、選擇排序,java已有的排序方法、折半查找...
  5. 游戏服务端的逻辑分服与物理分服
  6. external libraries里没有maven包_Maven企业实战系列(三):彻底看懂maven的体系结构...
  7. arm-none-eabi-gcc 嵌入式交叉编译器安装 极简教程
  8. babyion 加载obj模型_在vue中使用babylonjs引入3d模型,打印mesh数据正常且无报错,但未在场景中显示,请问是什么环节出现了问题?...
  9. 如何把程序挂在远端服务器python_Pycharm连接远程服务器并实现远程调试的实现...
  10. 随想录(内核模块的测试方法)
  11. playbook管理配置文件
  12. access视频教程百度网盘_office 2016 全套高清视频教程打包下载 - 行客工作室
  13. Unity桌面程序读取Excel表格
  14. Windows必备程序 | CleanMyPC安装教程
  15. C++ 线性表的结构体定义(顺序表和链式表)
  16. 计算机从应用上看向那个方向发展,(总)2019年6月一级Ms Office试题
  17. [SCU 4499] 表达式 (IDA*)
  18. TCL彩电总线调整进入宝典――1
  19. 博弈论算法Java,博弈论-java-51CTO博客
  20. 机器人开发--丝杠与导轨

热门文章

  1. 攻防演练怎样从外网进行纵深突破
  2. java课程设计日历_java课程设计日历记事本赵锐.doc
  3. 【机房收费系统】——傻瓜式报表设计器制作报表模板
  4. mybatis可以生成不重复的id吗_分布式全局不重复ID生成算法
  5. Mysql 8.0安装 Navicat for MySQL 下载安装及使用教程
  6. java 透传_透明传输 - javaadu - 博客园
  7. 服务器creo怎么添加配置文件,Creo 2.0 配置文件选项以及实例
  8. maven copy子模块 resources_查漏补缺,工程化——Maven这七个问题你会吗?
  9. excel自动排班有假期_在Excel中计划您的假期晚餐
  10. 月报|海伯利安7月项目进展汇报