- 浏览: 148447 次
- 性别:
- 来自: 深圳
文章分类
最新评论
1、线性布局
orientation为排列方式horizontal水平排列,vertical垂直排列(默认值)(各组件之间的关系)
gravity为布局管理器内组建的对齐方式 支持多组合使用“|”同时使用 在父容器中的位置
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="fill_parent" android:gravity="top"
2、表格布局
属性:Shrinkable 可以被收缩 组件字体过多的时候回收缩换行
Stretchable 可以被拉伸
Collapsed 该列的所有单元格会被隐藏
表格布局 可以看成是一个 表格,TableRow 是表格中的一行
实例:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <!-- 定义第一个表格布局,指定第2列允许收缩,第3列允许拉伸 --> <TableLayout android:id="@+id/TableLayout01" android:layout_width="fill_parent" android:layout_height="wrap_content" android:shrinkColumns="1" android:stretchColumns="2" > <!-- 直接添加按钮,它自己会占一行 --> <Button android:id="@+id/ok1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="一行" /> <!-- 添加一个表格行 --> <TableRow> <!-- 为该表格行添加3个按钮 --> <Button android:id="@+id/ok2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="普通按钮" /> <Button android:id="@+id/ok3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="允许被收缩的按钮" /> <Button android:id="@+id/ok4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="允许被拉伸的按钮" /> </TableRow> </TableLayout>
3、帧布局
类似于AWT中的CardLayOut
package org.crazyit.framelayout; import java.util.Timer; import java.util.TimerTask; import android.app.Activity; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.widget.TextView; /** * Description: * <br/>site: <a href="http://www.crazyit.org">crazyit.org</a> * <br/>Copyright (C), 2001-2012, Yeeku.H.Lee * <br/>This program is protected by copyright laws. * <br/>Program Name: * <br/>Date: * @author Yeeku.H.Lee kongyeeku@163.com * @version 1.0 */ public class FrameLayoutTest extends Activity { private int currentColor = 0; //定义一个颜色数组 final int[] colors = new int[] { R.color.color7, R.color.color6, R.color.color5, R.color.color4, R.color.color3, R.color.color2, R.color.color1, }; final int[] names = new int[] { R.id.View01, R.id.View02, R.id.View03, R.id.View04, R.id.View05, R.id.View06, R.id.View07 }; TextView[] views = new TextView[7]; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); for (int i = 0 ; i < 7 ; i++) { views[i] = (TextView)findViewById(names[i]); } final Handler handler = new Handler() { @Override public void handleMessage(Message msg) { //表明消息来自本程序所发送 if(msg.what == 0x1122) { //这貌似还是个不错的数据结构。。数组霓虹灯交换数据,,偏移量 //依次改变7个TextView的背景色 for(int i = 0 ; i < 7 - currentColor ; i++) { views[i].setBackgroundResource(colors[i + currentColor]); } for(int i = 7 - currentColor , j = 0 ; i < 7 ; i++ ,j++) { views[i].setBackgroundResource(colors[j]); } } super.handleMessage(msg); } }; //定义一个线程周期性的改变currentColor变量值 new Timer().schedule(new TimerTask() { @Override public void run() { currentColor++; if(currentColor >= 6) { currentColor = 0; } //发送一条消息通知系统改变7个TextView组件的背景色 Message m = new Message(); //给该消息定义一个标识 m.what = 0x1122; handler.sendMessage(m); } }, 0 , 100); } }
4、相对布局
2.4
2.4.1自动完成文本框
package org.crazyit.autocomplete; import android.app.Activity; import android.os.Bundle; import android.widget.ArrayAdapter; import android.widget.AutoCompleteTextView; /** * Description: * <br/>site: <a href="http://www.crazyit.org">crazyit.org</a> * <br/>Copyright (C), 2001-2012, Yeeku.H.Lee * <br/>This program is protected by copyright laws. * <br/>Program Name: * <br/>Date: * @author Yeeku.H.Lee kongyeeku@163.com * @version 1.0 */ public class AutoCompleteTextViewTest extends Activity { //定义字符串数组,作为提示的文本 String[] books = new String[]{ "java Java讲义", "java Ajax讲义", "java XML讲义", "java Workflow讲义" }; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); //创建一个ArrayAdapter,封装数组 ArrayAdapter<String> aa = new ArrayAdapter<String>( this, android.R.layout.simple_dropdown_item_1line, books); AutoCompleteTextView actv = (AutoCompleteTextView) findViewById(R.id.auto); //设置Adapter actv.setAdapter(aa); } }
发表评论
-
使用SlidingMenu开发demo
2013-05-06 16:29 1859源码: http://download.csdn.net ... -
Fragment学习笔记(待更新)
2013-05-06 11:30 1024简介: http://www.360doc.com/co ... -
下拉显示全部图片
2013-05-06 11:20 1281android:layout_height=" ... -
高仿微信学习
2013-05-03 16:28 19171、登录界面 button中设置该属性,点击的时 ... -
简单从网络上获取JSON数据解析
2013-05-03 12:05 10790package com.jiangqq.util; i ... -
ExpandableListActivity的使用。
2013-05-02 16:10 993其实也就是自定义了一个Adapter,也可以使用Simple ... -
侧边字母索引栏的使用
2013-04-13 10:42 1475自定义一个view 绘制 package ... -
(转)退出所有activity
2013-04-13 10:09 3195SysApplication这个类复制到工程里面,然后在每个 ... -
(转)在任一View上增加数字文字
2013-04-11 14:28 1269自定义一个TextView package com.jac ... -
(转)onInterceptTouchEvent和onTouchEvent调用时序
2013-04-10 16:03 1433onInterceptTouchEvent和onTouchE ... -
(转)Android中自定义View的MeasureSpec使用
2013-04-06 16:49 11631.如果没有再配置文件中精确指定多大,而是由子VIEW的大 ... -
仿IQIYI界面
2013-04-06 16:33 723底部菜单 采用5个不同的Linerlayout,每 ... -
PerferenceActivity学习
2013-03-30 15:05 1031SharedPreferences 能存储一下类型数据 ... -
手机QQ UI界面分析
2013-03-30 14:41 1680一、设置界面。 采用PerferenceActivity ... -
(转)android基本控件使用大汇集
2013-03-29 17:12 704原文: http://code.eoe.cn/335 ... -
内存泄露,优化收集
2013-03-29 16:44 762Android杂谈--内存泄露(1)--contentV ... -
手势缩放字体大小
2013-03-29 15:38 1817使用装饰者模式,讲一个普通的TextView 包装成一个可放 ... -
卸载安装应用,在线升级
2013-03-28 15:27 1151安装程序的方法: 1 ... -
Anim的使用与桌面快捷方式的生成
2013-03-28 14:31 799package org.crazyit.desktop; ... -
Android中Activity启动模式详解
2013-03-24 22:58 757参考http://www.cnblogs.com/fanch ...
相关推荐
【Android布局文件详解】 在Android应用开发中,界面设计是一个至关重要的环节,而XML格式的布局文件正是构建这些界面的核心工具。布局文件定义了应用程序界面的结构,包括它所包含的控件、控件间的相对位置以及...
Android布局文件的属性值解析说明: 1 android:id [为控件指定相应的ID] 2 android:text [指定控件当中显示的文字 需要注意的是 这里尽量使用strings xml文件当中的字符串] 3 android:gravity [指定View组件的对齐...
【Android布局管理器】是Android应用开发中的核心概念,它决定了UI组件在屏幕上的排列方式。在Android中,布局管理器主要有五种类型:线性布局(LinearLayout)、表格布局(TableLayout)、相对布局(RelativeLayout...
本文将深入探讨Android布局的各种类型及其使用方法,旨在帮助开发者更好地理解和掌握Android应用的UI设计。 首先,我们来了解Android中的基本布局类型: 1. **线性布局(LinearLayout)**:这是最基础的布局,它...
Android布局文件是用来描述应用程序界面上组件(如按钮、文本视图、图像视图等)的结构和位置的XML文档。这些文件定义了控件的属性,如大小、位置、文本、样式等,并且可以包含多个嵌套的布局以实现复杂的屏幕设计。...
### Android布局控件之RelativeLayout详解 #### 一、概述 在Android开发中,布局是非常重要的一环,良好的布局设计能够使界面美观且适应各种屏幕尺寸。`RelativeLayout`作为Android提供的几种基本布局之一,通过...
在进行Android布局设计时,应考虑响应式设计,确保界面在不同设备和屏幕尺寸上都能良好显示。同时,合理利用`ViewGroup`的嵌套和权重分配,可以帮助创建更加动态和适应性的界面。实践过程中,不断尝试和优化布局结构...
"Xamarin.Android布局文件自动提示功能"是指在使用Visual Studio或Visual Studio for Mac等集成开发环境(IDE)时,编辑器提供的智能代码补全和提示功能,它能显著提高开发效率,减少错误。本文将深入探讨这个功能,并...
因此,使用面向对象的思想来设计Android布局,可以有效地解决这些问题,提高代码的复用性和可扩展性。 面向对象编程(Object-Oriented Programming,OOP)的核心理念是将复杂的问题分解为一系列相互协作的对象,每...
Android布局高级.doc
本教程将深入探讨Android布局的各个方面,帮助开发者掌握创建高效、可扩展且美观的用户界面的技巧。 首先,我们来了解Android布局的基础知识。Android提供了多种布局类型,每种都有其特定的用途: 1. **线性布局...
在Android开发中,有时我们需要将一个布局转换为图片,例如为了实现分享到微信的功能,或者进行屏幕截图。本文将深入探讨如何在Android中实现“布局生成图片”这一技术,以及如何将其与微信分享功能集成。 首先,让...
LinearLayout 线性布局 控制组件 横向 或者 纵向 排列 RelativeLayout 相对布局 子组件的位置总是相对兄弟组件,父容器来决定的 FrameLayout 帧布局、框架布局 创建一个空白区域, 一个区域成为一帧 TableLayout 表格...
本文将深入探讨如何利用`include`、`ViewStub`和`merge`标签进行Android布局优化。 首先,`include`标签是一种强大的布局重用机制。在大型应用中,往往有许多相似或重复的布局元素,如导航栏、头部视图等。通过`...
在Android开发中,布局属性是构建用户界面的关键组成部分。这些属性允许开发者精确地控制各个UI组件的外观和位置。以下是对几种主要布局及其关键属性的详细说明: **LinearLayout**: 这是最基础的布局,可以将子...
这个“android布局案例源代码”压缩包包含了一系列的示例,帮助开发者深入理解并掌握Android布局设计。以下是这些案例中可能涉及的一些关键知识点: 1. **树形布局(TreeView)**: 树形布局是一种层次结构的展示...
在Android开发中,布局管理器是构建用户界面(UI)的关键元素。它们负责组织和定位UI组件,确保屏幕上的元素合理、美观地排列。本文将深入探讨Android中的常见布局管理器,尤其是基于XML的布局,以及如何在Activity...
本篇文章将深入探讨Android布局的相关知识点。 1. 布局类型: Android提供了多种布局类型,包括线性布局(LinearLayout)、相对布局(RelativeLayout)、帧布局(FrameLayout)、表格布局(TableLayout)和约束...
**Android布局软件DroidDraw详解** DroidDraw是一款专为Android开发者设计的图形化界面布局工具,它使得创建XML布局文件变得更加直观和简单。在早期的Android开发中,DroidDraw因其用户友好的特性,受到了不少...
下面我们将详细探讨Android布局及其在实际应用中的使用。 Android支持多种布局管理器,每种都有其特定的用途: 1. **线性布局(LinearLayout)**:这是最基础的布局,可以将子视图水平或垂直排列。通过设置`...