• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Android > Android开发1:基本UI界面设计——布局和组件,androidui

Android开发1:基本UI界面设计——布局和组件,androidui

作者:网友 字体:[增加 减小] 来源:互联网 时间:2017-05-26

网友通过本文主要向大家介绍了android开发ui,android开发四大组件,android开发组件,android ui界面开发,android ui开发框架等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

Android开发1:基本UI界面设计——布局和组件,androidui


前言

啦啦啦~本学期要开始学习Android开发啦~

博主在开始学习前是完完全全的小白,只有在平时完成老师要求的实验的过程中一步一步学习~从此篇博文起,博主将开始发布Android开发有关的博文,希望能在学习中和各位共同探讨,一起交流,共同进步~

话不多说,首先进入我们的正题~Android开发一基本UI界面设计——布局和组件(Android Studio的配置安装使用等在以后为各位补上~)

基础知识

  Android的组件分为布局和控件。布局,就是让控件在里面按一定的次序排列好的一种组件,本身并不提供内容。控件,就是显示内容的组件,比如显示一张图片,显示文字等等。在Android中,共有五种布局方式,分别是:FrameLayout(框架布局),LinearLayout (线性布局),AbsoluteLayout(绝对布局),RelativeLayout(相对布局),TableLayout(表格布局)。


(1)FrameLayout 框架布局,放入其中的所有元素都被放置在最左上的区域,而且无法为这些元素指定一个确切的位置,下一个子元素会重叠覆盖上一个子元素,适合浏览单张图片。
(2)LinearLayout 线性布局,是应用程序中最常用的布局方式,主要提供控件水平或者垂直排列的模型,每个子组件都是以垂直或水平的方式来定位.(默认是垂直)
(3)AbsoluteLayout 绝对定位布局,采用坐标轴的方式定位组件,左上角是(0,0)点,往右x轴递增,往下Y轴递增,组件定位属性为android:layout_x 和 android:layout_y来确定坐标。
(4)RelativeLayout 相对布局,根据另外一个组件或是顶层父组件来确定下一个组件的位置。和CSS里面的类似。
(5)TableLayout 表格布局,类似Html里的Table.使用TableRow来布局,其中TableRow代表一行,TableRow的每一个视图组件代表一个单元格。

 

线性布局

  在这其中,线性布局和相对布局是最常用的布局方式(本篇主要讲线性布局,相对布局在接下来的文章中会有具体叙述和应用~)

  线性布局是程序中最常见的一种布局方式,简单来说,直着排,横着排都可以,还可以嵌套,正因为如此(方便且简单),此布局运用的非常多。

  线性布局可以分为水平线性布局和垂直线性布局两种, 通过android:orientation属性可以设置线性布局的方向。

 

  在线性布局中主要存在以下属性:

android:orientation      定义布局内的方向水平或垂直(horizontal/vertical ) 

android:layout_weight  子元素对未占用空间【水平或垂直】分配权重值,其值越小,权重越大。 

android:layout_width -  宽(1.fill_parent: 父元素决定,2.wrap_content: 本身的内容决定)

android:layout_height - 高(3.高直接指定一个 px 值);

android:gravity -          内容的排列形式(常用 top, bottom, left, right, center,Left|center_)

 

  在讲线性布局相关的组件前,我们先讲一下可以在线性布局中嵌套使用的另一种常用布局方式:

 

TableLayout

  即表格布局,当需要布局内的组件像表格一样排列时,使用 TableLayout 比较方便。表格布局采用行、列 的形式来管理 UI 组件,TableLayout 并不需要明确地声明包含多少行、多少列,而是通过添加 TableRow、其他组件来控制表格的行数和列数。每次向 TableLayout 中添加一个 TableRow,该 TableRow 就是一个表格行,TableRow 也是容器,因此它也可以不断地添加其他组件,每添加一个子组件该表格就增加一列。

  如果直接向 TableLayout 中添加组件,那么这个组件将直接占用一行。 在表格布局中,列的宽度由该列中最宽的那个单元格决定,整个表格布局的宽度则取决于父容器的宽度。(默认总是占满父容器本身)

 

  三个重要的 xml 属性:

  collapseColumns:设置需要被隐藏的列的列序号,多个列序号之间用逗号隔开;

  shrinkColumns:设置允许被收缩的列序号,多个列序号之间用逗号隔开;

  stretchColumns:设置允许被拉伸的列序号,多个列序号之间用逗号隔开。

  注意,列序号从0开始计数。

 

现在正式讲一下线性布局中可能用到的组件:

 

TextView

  用于显示文字内容的控件,通过设置 text 的值来显示要显示的内容,常用的属性有 textColor,用于设置文字的颜色;textSize,用于设置文字大小。示例:

   

效果图:

 

关于@color/colorAccent 这种形式的资源引用后面会讲。

 

EditText

  用于接受用户输入的输入框,常用属性除了和TextView相同的 textColor和 textSize之外,还有inputType,用于设置输入框中文本的类型,如果设置为textPassword,会使输入的文字变为小点(·); hint,用于设置当输入框为空时的提示内容。以一个密码输入框做示例:


效果如下

未输入前:

输入之后:

 



分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Android开发1:基本UI界面设计——布局和组件,androidui

相关文章

  • 2017-05-26android开发网络连接工具类(一),android工具类
  • 2017-05-26Android关于Dex拆分(MultiDex)技术的解析
  • 2017-05-222.2.3 TableLayout(表格布局)
  • 2017-05-26Android中对Handle机制的理解
  • 2017-05-26Android中TextView添加删除线,androidtextview
  • 2017-05-26为什么在python里推荐使用多进程而不是多线程?--转同事的一篇文章
  • 2017-05-26dspam运维记录
  • 2017-05-26EditText的setSelection属性,setselection
  • 2017-07-23Android搜索结果显示高亮(有数据滑动底部自动刷新)
  • 2017-05-26手机影音6--视频播放器的基本功能(3),6--基本功能

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 揭开AssetBundle庐山真面目(二)
    • 2.3.7 ProgressBar(进度条)
    • 关于安卓的一些初步认识,安卓认识
    • Android线程优先级设置方法技巧,android线程优先级
    • Kotlin中的“忍者”函数 —— 理解泛型的能力(KAD 12),kotlinkad
    • Android面试题(1),android面试题
    • Swift开发iOS应用(1)列表的实现
    • Android开发学习之路--Service之初体验
    • 自定义控件添加自定义属性问题,控件添加自定义属性
    • Android新手入门2016(8)--ListView之ArrayAdapter

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有