关闭

Android UI布局和事件处理小结

标签: androiduilayout手机xml
1083人阅读 评论(0) 收藏 举报
分类:

Android布局总结:

1.       布局有直线布局、相对布局、绝对布局、帧布局、表格布局、其他复合布局等。最经常用到的是相对布局,通过相对布局对其他布局进行整合可以得到不同的布局。大部分时候,使用绝对布局不是一个好思路,因为运行Adroid应用的手机往往千差万别,因此屏幕大小、分辨率都存在较大差异,使用绝对布局需要兼顾不同屏幕大小、分辨率问题。针对一个布局用到许多属性,比如:格局、样式、背景颜色、覆盖程度、字体设置等。

2.       之前对FrameLayou的理解是,把FrameLayout当作画布canvas,固定从屏幕的左上角开始填充图片,文字等。今天做示例,原来可以利用android:layout_gravity来设置位置的,并且查阅了 android:layout_gravityandroid:gravity的区别:前者是本元素对父元素的重力方向,后者是本元素所有子元素的重力方向。

 

UI事件处理总结:

1.       onClick()来自View.OnClickListener 它会被调用当点击这个Item(在触摸模式),或者当光标聚集在这个Item上时按下确认 ,导航键,或者轨迹球。

onLongClick()来自View.OnLongClickListener.  它会被调用当长按这个Item(在触摸模式),或者当光标聚集在这个Item上时长按确认 ,导航键,或者轨迹球。

onFocusChange()来自View.OnFocusChangeListener 它会被调用当光标移到或离开这个ItemonKey()来自View.OnKeyListener..它会被调用,当光标移到这个Item,按下和释放 一个按键的时候。

onTouch()来自View.OnTouchListener. 它会被调用 ,在这个Item的范围内点触的时候。onCreateContextMenu() 它会被调用, 当上下文菜单被建立时(由于持续的长按”)  

2.       种实现方法:一是定义一个OnXXXListener 类的实例,并使用setOnXXXListener等绑定监听器;二是用Activity去实现OnXXXListener接口,并作为它的一部分,这样会更方便,省去了加载额外的类和对象的时间。

对于支持触摸屏的手机,可以设定触摸模式的UI,可以使用isInTouchMode()来获得触摸模式的状态。

UI处理的另一个重点是焦点的设定及其切换。焦点设置:通过setFocusable或者setFocusableInTouchMode设置可以接受焦点,通过isFocusableisFocusableInTouchMode获取是否可以接受焦点;焦点切换:编写XML布局文件的nextFocusDown 等属性设置。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:40297次
    • 积分:620
    • 等级:
    • 排名:千里之外
    • 原创:21篇
    • 转载:20篇
    • 译文:0篇
    • 评论:4条
    最新评论