android布局

Android布局大全

冷暖自知 提交于 2019-12-25 01:20:04
Android的界面是有布局和组件协同完成的,布局好比是建筑里的框架,而组件则相当于建筑里的砖瓦。组件按照布局的要求依次排列,就组成了用户所看见的界面。 所有的 布局方式都可以归类为ViewGroup的5个类别,即ViewGroup的5个直接子类。其它的一些布局都扩展自这5个类。 1. LinearLayout ,线性布局方式   这种布局比较常用,也比较简单,就是每个元素占一行,当然也可能声明为横向排放,也就是每个元素占一列。   LinearLayout按照垂直或者水平的顺序依次排列子元素,每一个子元素都位于前一个元素之后。如果是垂直排列,那么将是一个N行单列的结构,每一行只会有一个元素,而不论这个元素的宽度为多少;如果是水平排列,那么将是一个单行N列的结构。如果搭建两行两列的结构,通常的方式是先垂直排列两个元素,每一个元素里再包含一个LinearLayout进行水平排列。   LinearLayout中的子元素属性android:layout_weight生效,它用于描述该子元素在剩余空间中占有的大小比例。加入一行只有一个文本框,那么它的默认值就为0,如果一行中有两个等长的文本框,那么他们的android:layout_weight值可以是同为1。如果一行中有两个不等长的文本框,那么他们的android:layout_weight值分别为1和2

Android 构建UI

寵の児 提交于 2019-12-25 01:19:50
在一个 Android 应用中,Layout是开发中的一个很重要环节,Layout是组成UI不可缺少的一部分。 ## Android UI 核心类 在Android应用构建UI的方法有以下几种: 单纯使用JAVA代码 使用XML完全定义界面 结合使用两者,在XML中定义,在JAVA中引用和修改 Android SDK中关于UI的核心类: Android.view.View和android.view.ViewGroup android中的常见UI控件均会扩展View和ViewGroup其中有一部分是专门用来控制其子View位置和大小,这些类我们称为布局管理器。 ViewGroup 1.LayoutParams是ViewGroup内部类,包含了ViewGroup的布局参数,用来告诉它们的父类它们想怎么在父类中布局(大小和位置),所有在LayoutParams及其子类中定义的布局参数在xml中定义都是通过layout_***定义的。 LayoutParams只提供了两个参数设定: layout_width 元素的高度(fill_parent | match_parent | wrap_content | *dip) layout_height 元素的宽度(同上) 2.MarginLayoutParams也是ViewGroup一个内部类,它继承了LayoutParams类

android界面布局

我只是一个虾纸丫 提交于 2019-12-25 00:26:51
android界面布局 6种基本摆放控件的规则 框架布局 FrameLayout,也叫帧布局 该布局上的控件放在左上角,按照放置的前后顺序,逐一层叠,后面的布局会遮盖住前面的 线性布局 LinearLayout 按照水平或者垂直两种方式排布,在布局文件中使用 android:orientation 来决定方向 相对布局 RelativeLayout 相对于其他控件位置,通常是指定id关联其他控件,以上下左右对齐等方式排列 属性 描述 layout_alignParentXXX:Top,Bottom,Left,Right 与父控件平齐 layout_centerInXXX:Parent,Horizontal,Vertical 在父控件的中间 layout_alignXXX:Top,Bottom,Left,Right=@id/ 与ID为xxx控件平齐 layout_XXX:above,blow,toRightOf,toLeftOf=@id/ 绝对布局 AbsolutelLayout 以屏幕左上角为坐标原点(0,0),直接指定具体坐标为位置,一般少用,因为存在兼容性问题 直接指定 layout_x 和 layout_y 表格布局 TableLayout 将布局页面划分为行列的单元格,使用 <Tablerow></TableRow> 标记单元格的一行 全局属性 也就是列属性

Android 常用UI组件

↘锁芯ラ 提交于 2019-12-24 04:33:06
文章目录 布局管理器 1. 线性布局 LinearLayout 2. 相对布局 RelativeLayout TextView Button 布局管理器 1. 线性布局 LinearLayout 最常用属性 android:id android:layout_margin android:layout_width android:layout_padding android:layout_height android:orientation android:background android:id 创建id android:id="@+id/ll_1" 宽度和高度( android:layout_width android:layout_height ) match_parent android:layout_width="match_parent" android:layout_height="match_parent" 匹配父控件,表示让当前控件的大小和父布局的大小一样,也就是由父布局来决定当前控件的大小 wrap_content android:layout_width="wrap_content" android:layout_height="wrap_content" 表示让当前的控件大小能够刚好包含里面的内容,也就是由控件内容决定当前控件的大小 固定宽度和高度

androd备考 UI-01相对布局与线性布局

梦想与她 提交于 2019-12-23 13:03:28
布局 相对布局,在....左右下 相对布局才有,相对布局想要左对齐: gravity,设置View组件的对齐方式。 scrollHorizontally,水平滚动条。 eg:限制一行长度10 超出10的部分以滚动条方式显示 自定义按钮图片: 基本控件 button案例 activity_main.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity"

Android 之窗口小部件详解--App Widget

纵然是瞬间 提交于 2019-12-23 10:17:03
1 App Widget简介 App Widget是应用程序窗口小部件(Widget)是微型的应用程序视图,它可以被嵌入到其它应用程序中(比如桌面)并接收周期性的更新。你可以通过一个App Widget Provider来发布一个Widget。 本文参考 Android官方文本 ,先介绍App Widget的主要组件,然后再以示例来详细说明。 2 App Widget主要的相关类介绍 2.1 AppWidgetProvider AppWidgetProvider 继承自 BroadcastReceiver,它能接收 widget 相关的广播,例如 widget 的更新、删除、开启和禁用等。 AppWidgetProvider中的广播处理函数如下: onUpdate() 当 widget 更新时被执行。 同样,当用户首次添加 widget 时,onUpdate() 也会被调用,这样 widget 就能进行必要的设置工作(如果需要的话) 。但是,如果定义了 widget 的 configure属性(即android:config,后面会介绍),那么当用户首次添加 widget 时,onUpdate()不会被调用;之后更新 widget 时,onUpdate才会被调用。 onAppWidgetOptionsChanged() 当 widget 被初次添加 或者 当 widget

Android 之窗口小部件详解--App Widget

眉间皱痕 提交于 2019-12-23 10:16:50
Android 之窗口小部件详解--App Widget 版本号 说明 作者 日期 1.0 添加App Widge介绍和示例 Sky Wang 2013/06/27 1 App Widget简介 App Widget是应用程序窗口小部件(Widget)是微型的应用程序视图,它可以被嵌入到其它应用程序中(比如桌面)并接收周期性的更新。你可以通过一个App Widget Provider来发布一个Widget。 本文参考 Android官方文本 ,先介绍App Widget的主要组件,然后再以示例来详细说明。 2 App Widget主要的相关类介绍 2.1 AppWidgetProvider AppWidgetProvider 继承自 BroadcastReceiver,它能接收 widget 相关的广播,例如 widget 的更新、删除、开启和禁用等。 AppWidgetProvider中的广播处理函数如下: onUpdate() 当 widget 更新时被执行。 同样,当用户首次添加 widget 时,onUpdate() 也会被调用,这样 widget 就能进行必要的设置工作(如果需要的话) 。但是,如果定义了 widget 的 configure属性(即android:config,后面会介绍),那么当用户首次添加 widget 时,onUpdate()不会被调用;之后更新

LayoutInflate

孤者浪人 提交于 2019-12-21 11:35:34
LayoutInflate主要用于加载布局,包括在Activity中调用setContentView(),方法内部其实也是用LayoutInflate来实现的。 基本用法: 两句语句都可以获取到LayoutInflater的实例 //两种初始化方式 LayoutInflater inflater = LayoutInflater.from(this); // LayoutInflater inflater1 = (LayoutInflater) this.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 1 2 3 因为在源码里,from就是一个系统封装好的方法,里面用了context.getSystemService…… 调用他的inflate方法加载布局 inflate()方法一般接收两个参数,第一个参数就是要加载的布局id,第二个参数是指给该布局的外部再嵌套一层父布局,如果不需要就直接传null。 这样就成功成功创建了一个布局的实例,之后再将它添加到指定的位置就可以显示出来了。 inflater.inflate(resourceId, root); 1 举个栗子: activity_main.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res

Android布局之相对布局——RelativeLayout

[亡魂溺海] 提交于 2019-12-21 09:23:30
此博文主要是相对布局xml属性的解析及实例。 android:layout_above :此 控件底部 的边缘位于设定ID控件的上方 <Button android:id="@+id/btn1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="hello " android:layout_above="@+id/btn2" />    //<<<<------ <Button android:id="@+id/btn2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="world" android:layout_centerVertical="true" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" /> 显示结果:      android:layout_below :此 控件 顶部 的边缘位于设定ID控件的下方 <Button android:id="@+id/btn1" android:layout_width="wrap

2.1 View与ViewGroup的概念

人走茶凉 提交于 2019-12-20 20:56:43
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 2.1 View与ViewGroup的概念 分类 Android 基础入门教程 本节引言 告别了第一章,迎来第二章——Android中的UI(User Interface)组件的详解, 而本节我们要学习的是所有控件的父类View和ViewGroup类!突发奇想,直接翻译官方文档对 这两个东西的介绍吧,对了,天朝原因,google上不去,Android developer上不去,我们可以 改hosts或者用vpn代理,当然也可以像笔者一样使用国内的API镜像,这里分享个吧: http://androiddoc.qiniudn.com/guide/topics/ui/overview.html 这个镜像是5.0的API! UI Overview 在Android APP中,所有的用户界面元素都是由View和ViewGroup的对象构成的 。 View是绘制在屏幕上的用户能与之交互的一个对象。而ViewGroup则是一个用于存放其他View(和ViewGroup)对象的布局容器! Android为我们提供了一个View和ViewGroup子类的集合,集合中提供了一些常用的输入控件(比如按钮和文本域)和各种各样的布局模式(比如线性或相对布局) User Interface Layout