android LinearLayout和RelativeLayout组合实现精确布局方法介绍

 更新时间:2012年11月12日 14:10:21   作者:  
用android LinearLayout和RelativeLayout实现精确布局此方法适合很适合新人看
先明确几个概念的区别
padding margin都是边距的含义,关键问题得明白是什么相对什么的边距.
padding是控件的内容相对控件的边缘的边距.
margin是控件边缘相对父空间的边距.
 
android:gravity 属性是对该view 内容的限定.比如一个button 上面的text. 你可以设置该text 在view的靠左,靠右等位置.该属性就干了这个.
android:layout_gravity是用来设置该view中的子view相对于父view的位置.比如一个button 在linearlayout里,你想把该button放在靠左,靠右等位置就可以在linearlayout中通过该属性设置.
复制代码 代码如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:gravity="center_vertical">
<ImageView android:id="@+id/ivLogo" android:layout_width="50dp"
android:layout_height="50dp" android:src="@drawable/icon"
android:paddingLeft="5dp" />
<RelativeLayout android:id="@+id/rl_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content" android:gravity="right"
android:padding="10dp">
<TextView android:id="@+id/tvApplicationName"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:textSize="16dp" />
</RelativeLayout>
<RelativeLayout android:id="@+id/rl_score"
android:layout_width="fill_parent"
android:layout_height="wrap_content" android:gravity="right"
android:padding="10dp">
<TextView android:id="@+id/tvRating" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:text="5.0" />
<RatingBar android:id="@+id/ratingbar" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:numStars="5"
style="?android:attr/ratingBarStyleSmall" android:layout_below="@id/tvRating" />
</RelativeLayout>
</LinearLayout>

 
上面的布局文件是一个ListView中的list_item布局,在一个ListView中显示所有的APK资源,每个资源项显示图标,名称及评分。在listItem的最外层LinearLayout中加android:gravity="center_vertical",设定内容垂直居中显示。在id为rl_score的RelativeLayout中设定android:layout_width="fill_parent"来填充剩余空间;android:gravity="right"设定内容相对于rl_score右对齐;android:padding="10dp"设定RelativeLayout中的内容相对RelativeLayout的边缘的边距为10dp。
这个布局虽然简单,但却是经常用到的。

相关文章

  • Android开发之Wifi基础教程

    Android开发之Wifi基础教程

    这篇文章主要介绍了Android开发Wifi基础教程,实例分析了Wifi的各种常见基本技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-02-02
  • Android开发经验谈:并发编程(线程与线程池)(推荐)

    Android开发经验谈:并发编程(线程与线程池)(推荐)

    这篇文章主要介绍了Android开发经验谈:并发编程(线程与线程池),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • 详细介绍Android中回调函数机制

    详细介绍Android中回调函数机制

    这篇文章主要介绍了Android中回调函数机制,有需要的朋友可以参考一下
    2014-01-01
  • Android开发之如何自定义数字键盘详解

    Android开发之如何自定义数字键盘详解

    这篇文章主要给大家介绍了关于Android开发之如何自定义数字键盘的相关资料,本文语言是基于kotlin实现的,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-09-09
  • 关于RxJava的一些特殊用法小结

    关于RxJava的一些特殊用法小结

    RxJava 是一个响应式编程框架,采用观察者设计模式。下面这篇文章主要总结介绍了一些关于RxJava的特殊用法,需要的朋友可以参考借鉴,下面跟着小编一起来学习学习吧。
    2017-05-05
  • Android 操作系统获取Root权限 原理详细解析

    Android 操作系统获取Root权限 原理详细解析

    许多机友新购来的Android机器没有破解过Root权限,无法使用一些需要高权限的软件,以及进行一些高权限的操作,其实破解手机Root权限是比较简单及安全的,破解Root权限的原理就是在手机的/system/bin/或/system/xbin/目录下放置一个可执行文件“su”
    2013-10-10
  • Android开发实现带清空按钮的EditText示例

    Android开发实现带清空按钮的EditText示例

    这篇文章主要介绍了Android开发实现带清空按钮的EditText,结合具体实例形式分析了Android实现EditText清空按钮功能相关操作技巧,非常具有实用价值,需要的朋友可以参考下
    2017-11-11
  • Android Camera2采集摄像头原始数据

    Android Camera2采集摄像头原始数据

    这篇文章主要介绍了Android Camera2采集摄像头原始数据并进行手工预览的功能实现原理以及代码分析,需要的朋友学习下吧。
    2018-02-02
  • Android 调用发送短信的方法

    Android 调用发送短信的方法

    这篇文章主要介绍了Android 调用发送短信的方法的相关资料,主要实现Android 调用短信的使用,希望通过本文能帮助到大家,需要的朋友可以参考下
    2017-09-09
  • flutter图片组件核心类源码解析

    flutter图片组件核心类源码解析

    这篇文章主要为大家介绍了flutter图片组件源码解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-04-04

最新评论