`
Everyday都不同
  • 浏览: 723488 次
  • 性别: Icon_minigender_1
  • 来自: 宇宙
社区版块
存档分类
最新评论

请您先登录,才能继续操作

android UI小结(一)

阅读更多
一、view组件的一些特殊属性、相关方法和说明
XML属性相关方法说明
android:fadeScrollbarssetScrollbarFadingEnabled(boolean)当不使用该组件的滚动条时,是否淡出
android:longClickablesetLongClickable(boolean)该组件是否可以响应长单击事件
android:nextFocusDownandroid:setNextFocusDownId(int)设置焦点在该组件上,且向下按键时获得焦点组件的ID
android:alphasetAlpha(float)设置该组件的透明度
android:visibilitysetVisibility(int)设置该组件是否可见


二、android:gravity和android:layout_gravity区别

android:gravity:是对view控件本身来说的,是用来设置view本身的文本应该显示在view的什么位置,默认值是左侧,即设置布局文件组件的对齐方式
android:layout_gravity:是相对于包含改元素的父元素来说的,设置该元素在父元素的什么位置,指定该元素在LinearLayout中的对齐方式

三、自定义View
首先必须继承View基类,重写构造器还有重写onDraw方法,再选择性地重写你需要的方法。而在布局文件中使用它时,必须指定全限定类名。如
<xx.xx.View.MyView
  android:layout_width=""
  android:layout_height="" />


四、表格布局TableLayout
  继承自LinearLayout.每次向TableLayout中添加一个TableRow,该TableRow也是容器,就是一个表格行。向TableRow中添加一个组件表格就增加一列。如果直接向TableLayout中添加组件,那么该组件将直接占用一行
android:collapseColumns设置需要被隐藏的列的序列号,多个序列号之间用,隔开
android:shrinkColumns设置允许被收缩的列的序列号,多个序列号之间用,隔开
android:stretchColumns设置允许被拉伸的列的序列号,多个序列号之间用,隔开


五、周期性改变
android的View和UI组件不是线程安全的,不允许开发者直接启动线程访问用户界面的UI组件。所以必须额外定义一个Handler来处理。
eg:启动线程周期性改变TextView的背景色
Handler handler = new Handler()
	{
		@Override
		public void handleMessage(Message msg)
		{
			// 表明消息来自本程序所发送
			if (msg.what == 0x123)
			{
				for (int i = 0; i < names.length; i++)
				{
					views[i].setBackgroundResource(colors[(i 
							+ currentColor)	% names.length]);
				}
				currentColor++;
			}
			super.handleMessage(msg);
		}
	};

@Override
	public void onCreate(Bundle savedInstanceState)
	{
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		
		// 定义一个线程周期性的改变currentColor变量值
		new Timer().schedule(new TimerTask()
		{
			@Override
			public void run()
			{
				// 发送一条空消息通知系统改变6个TextView组件的背景色
				handler.sendEmptyMessage(0x123);
			}
		}, 0, 200);
	}


六、网格布局GridLayout
类似于HTML页面的Table标签,他把整个容器划分为rows x columns个网格,每个网格可放置一个组件。
setRowCoount(int)和setColumnCount(int)方法设置网格的行数量和列数量
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"	android:rowCount="6"
	android:columnCount="4"
	>
<TextView 
    android:layout_width="match_parent"
	android:layout_height="wrap_content" 
	android:layout_columnSpan="4" />
</GridLayout >
分享到:
评论

相关推荐

    android auto ui 测试

    #### 四、小结 通过上述步骤,你可以有效地设置和运行Android UI自动化测试。这不仅可以提高测试效率,还能确保应用在各种设备上都能提供一致的用户体验。记住,在执行测试之前,请确保所有环境配置正确,并且已...

    Android应用UI开发中Fragment的常见用法小结

    总之,Fragment是Android UI开发中的重要组成部分,它使得在不同屏幕尺寸和分辨率的设备上构建动态、灵活的用户界面成为可能。通过理解并熟练掌握Fragment的创建、通信、生命周期管理和回退栈管理等关键知识点,...

    Android_UI开发专题(一)_之界面设计

    #### 四、小结 本文档详细介绍了Android UI开发中的关键知识点,特别是与界面设计密切相关的`android.content.res.Resources`和`android.graphics.Bitmap`两个类。通过学习这些基础知识,开发者可以更好地理解和...

    Android问题小结

    本资料包"Android问题小结"是针对Android开发者的一个宝贵资源集合,涵盖了多个方面的知识,包括事件分发机制、设计模式、图层管理、属性动画、框架使用、应用安全以及个人职业发展规划等。 首先,"技术交流--...

    Android UI_常用组件之 Spinner与适配器模式

    #### 小结 本文详细介绍了Android UI中`Spinner`组件的基本使用以及如何结合适配器模式进行数据绑定。`Spinner`是Android开发中非常实用的一个组件,掌握其使用方法可以帮助开发者更好地设计用户界面,提供更友好的...

    Android知识小结

    以下是对Android知识的一些小结,旨在分享遇到的问题及其解决方案,帮助开发者提升技能和解决问题。 1. **UI设计与布局**:Android使用XML来定义用户界面布局。`efefe.PNG`、`weff.PNG`可能展示了不同类型的布局,...

    Android内存管理小结

    - **Dalvik虚拟机简介**:Dalvik虚拟机是Android系统的核心组件之一,它负责执行Android应用中的Java字节码。与传统的Java虚拟机(JVM)不同,Dalvik虚拟机执行的是.dex文件格式的字节码,这种格式经过了专门的设计,...

    android小结.docx

    设备独立像素(dip)是一种与设备分辨率无关的单位,用于确保UI元素在不同密度屏幕上保持一致的大小。将像素值(px)转换为dip的公式是:`px = (int) (dip * density + 0.5f)`,其中`density`是屏幕密度。注意,...

    Android高级工程师面试技术点小结

    ### Android高级工程师面试技术点小结 在当前竞争激烈的IT行业中,成为一名优秀的Android高级工程师不仅意味着需要具备深厚的技术功底,还需要不断跟进最新的技术趋势和发展方向。本文将根据标题、描述以及部分内容...

    android 小结

    在这个"android小结"中,我们可以探讨一些核心的Android知识点,包括但不限于源码解析、工具使用以及一个可能的示例项目"MainActivityDemo"。让我们逐一深入探讨。 **源码解析** 在Android开发中,理解源码是提升...

    Android入门小项目(增删查改操作)

    在Android开发领域,一个入门级别的小项目通常会涵盖基本的操作,如增删查改(CRUD,Create、Read、Update、Delete),这是任何数据管理应用的基础。本项目以"Android入门小项目(增删查改操作)"为主题,旨在帮助初学...

    Android异步加载图像小结 (含线程池,缓存方法).rar

    在Android应用开发中,图像加载是一个常见的...以上就是关于“Android异步加载图像小结(含线程池,缓存方法)”的主要知识点。在实际应用中,开发者应结合项目需求,合理选择和优化这些技术,以提供流畅的用户体验。

    Android开发与应用——张荣 原书配套例程代码

    第1章 Android简介 1.1 手机操作系统 1.2 Android起源 1.3 Android特征 1.4 Android体系结构 1.4.1 应用层 1.4.2 应用框架层 1.4.3 系统库层 1.4.4 内核层 1.5 小结 练习 第2章 Android开发环境 2.1 ...

    《Android应用开发揭秘》附带光盘代码.

     15.6 AndroidUI优化  15.7 其他优化  15.7.1 zipalign  15.7.2 图片优化  15.8 小结  第五部分 扩展篇  第16章 Android NDK开发  16.1 AndroidNDK简介  16.2 安装和配置NDK开发环境  16.2.1 系统和软件...

    Android Drawable必备知识小结

    Android Drawable是Android开发中不可或缺的一部分,它是一种抽象类,用于表示可以在Canvas上绘制的各种图像,通常作为View的背景。Drawable提供了丰富的功能,包括显示图片、纯色、九宫格图以及自定义形状等。 ...

    《Android应用开发揭秘》源码

     15.6 AndroidUI优化  15.7 其他优化  15.7.1 zipalign  15.7.2 图片优化  15.8 小结  第五部分 扩展篇  第16章 Android NDK开发  16.1 AndroidNDK简介  16.2 安装和配置NDK开发环境  16.2.1 系统和软件...

    Android开发案例驱动教程 配套代码

    本章小结 42 第4章 UI基础知识 43 4.1 Android UI组件概述 43 4.1.1 View 43 4.1.2 ViewGroup 44 4.1.3 布局管理器 44 4.2 UI设计工具 44 4.2.1 DroidDraw工具 44 4.2.2 ADT插件UI设计工具 46 4.3 事件处理...

    Android应用开发揭秘pdf高清版

    15.6 AndroidUI优化 15.7 其他优化 15.7.1 zipalign 15.7.2 图片优化 15.8 小结 第五部分 扩展篇 第16章 Android NDK开发 16.1 AndroidNDK简介 16.2 安装和配置NDK开发环境 16.2.1 系统和软件需求 16.2.2 NDK开发...

Global site tag (gtag.js) - Google Analytics