android UI小结(一)
来源:互联网 发布:vmware mac补丁包 编辑:程序博客网 时间:2024/05/16 18:37
一、view组件的一些特殊属性、相关方法和说明
XML属性相关方法说明android:fadeScrollbarssetScrollbarFadingEnabled(boolean)当不使用该组件的滚动条时,是否淡出android:longClickablesetLongClickable(boolean)该组件是否可以响应长单击事件android:nextFocusDownandroid:setNextFocusDownId(int)设置焦点在该组件上,且向下按键时获得焦点组件的IDandroid:alphasetAlpha(float)设置该组件的透明度android:visibilitysetVisibility(int)设置该组件是否可见
二、android:gravity和android:layout_gravity区别
android:gravity:是对view控件本身来说的,是用来设置view本身的文本应该显示在view的什么位置,默认值是左侧,即设置布局文件组件的对齐方式
android:layout_gravity:是相对于包含改元素的父元素来说的,设置该元素在父元素的什么位置,指定该元素在LinearLayout中的对齐方式
三、自定义View
首先必须继承View基类,重写构造器还有重写onDraw方法,再选择性地重写你需要的方法。而在布局文件中使用它时,必须指定全限定类名。如
四、表格布局TableLayout
继承自LinearLayout.每次向TableLayout中添加一个TableRow,该TableRow也是容器,就是一个表格行。向TableRow中添加一个组件表格就增加一列。如果直接向TableLayout中添加组件,那么该组件将直接占用一行
android:collapseColumns设置需要被隐藏的列的序列号,多个序列号之间用,隔开android:shrinkColumns设置允许被收缩的列的序列号,多个序列号之间用,隔开android:stretchColumns设置允许被拉伸的列的序列号,多个序列号之间用,隔开
五、周期性改变
android的View和UI组件不是线程安全的,不允许开发者直接启动线程访问用户界面的UI组件。所以必须额外定义一个Handler来处理。
eg:启动线程周期性改变TextView的背景色
六、网格布局GridLayout
类似于HTML页面的Table标签,他把整个容器划分为rows x columns个网格,每个网格可放置一个组件。
setRowCoount(int)和setColumnCount(int)方法设置网格的行数量和列数量
XML属性相关方法说明android:fadeScrollbarssetScrollbarFadingEnabled(boolean)当不使用该组件的滚动条时,是否淡出android:longClickablesetLongClickable(boolean)该组件是否可以响应长单击事件android:nextFocusDownandroid:setNextFocusDownId(int)设置焦点在该组件上,且向下按键时获得焦点组件的IDandroid: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(){@Overridepublic 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);}};@Overridepublic void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.main);// 定义一个线程周期性的改变currentColor变量值new Timer().schedule(new TimerTask(){@Overridepublic 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 >
0 0
- android UI小结(一)
- UI小结.(一)
- Android UI 小结
- android UI小结(二)
- android UI小结(三)
- android UI小结(四)
- android UI小结(五)
- android UI小结(六)
- Android UI优化小结
- symbian UI开发小结(一)
- 【Android UI】SlidingTabLayout使用小结
- Android UI控件一
- Android UI (一)
- Android学习小结(一)
- Android UI布局和事件处理小结
- android UI布局的性能优化小结
- Android开发小结——UI开发
- android UI效果一: coverFlow
- setBackground、setBackgroundDrawable、setBackgroundResource、setBackgroundColor的区别
- 用Java读取Windows的Command指令
- Asp.Net WebForm vs MVC
- SDE10.1 无法连接的问题解决
- 装饰设计模式简析
- android UI小结(一)
- 小白逛公园加强版(vijos1620)
- Java其他API介绍
- 性能的一些基本概念和原则
- 设计模式(一):策略模式+简单工厂模式
- 自己写的一个启动JBoss服务器的bat批处理
- 结合File类浅析递归的使用
- android UI小结(二)
- 【转载】linux sort 命令详解