2009年7月23日
摘要: 在接下来的例子里,你将通过扩展View类创建一个指南针View。它使用传统的指南针上升箭头来指示方向。当完成时,应该和图4-3看起来一样。指南针是一个UI控件的例子,它需要完全不同的视觉显示,不同于SDK工具箱中的TextView和Button,让我们从无到有使它成为一个出色的控件。在第10章,你将使用这个指南针View和设备内建的重力加速计来显示用户当前的方向。在11章中,你将学习更高级的Can... 阅读全文
posted @ 2009-07-23 21:56 xirihanlin 阅读(2081) 评论(1) 推荐(0) 编辑
摘要: 为了让新的widget有交互性,它需要响应用户事件,如按键按下,屏幕触摸和按钮点击等。Android提供了一些虚的事件处理器来与用户输入交互:❑ onKeyDown当设备按键被按下时调用;包括D-pad,键盘,挂机,呼叫,回退和照相按钮❑ onKeyUp当用户释放按下的键时调用❑ onTrackballEvent当轨迹球移动时调用❑ onTouchEvent当触摸屏被按下或释放,或者检测到移动时调... 阅读全文
posted @ 2009-07-23 11:31 xirihanlin 阅读(974) 评论(0) 推荐(0) 编辑
摘要: 除非你总是需要一个100×100像素的控件,否则,你必须要重写onMeasure。onMeasure方法在控件的父元素正要放置它的子控件时调用。它会问一个问题,“你想要用多大地方啊?”,然后传入两个参数——widthMeasureSpec和heightMeasureSpec。它们指明控件可获得的空间以及关于这个空间描述的元数据。比返回一个结... 阅读全文
posted @ 2009-07-23 11:12 xirihanlin 阅读(3795) 评论(0) 推荐(1) 编辑
摘要: onDraw方法是一个发挥想象的地方。如果你正在白手起家式地创建一个widget,正是由于你想创建一个全新的视觉界面。onDraw方法中传入的Canvas参数就是一个表面,你用它来给你的想象赋予生命。通过一些Paint对象,Android提供了一系列工具来帮助你在Canvas上绘制你的设计。Canvas类包含一些辅助方法来绘制基本的2D对象,包括圆、线、矩形、文本和图片等。当你在其上绘制时,它也支... 阅读全文
posted @ 2009-07-23 10:19 xirihanlin 阅读(1023) 评论(0) 推荐(0) 编辑
摘要: 基本的View类代表一个全空的100×100像素的正方形。为了改变控件的大小和显示更炫的视觉效果,最具代表的,你需要重写onMeasure和onDraw方法。在onMeasure方法里,新的View会依据给的边界条件来计算它要占据的高度和宽度。在onDraw方法里,通过在画布上画画来创建视觉界面。接下来的代码片段给出了一个新的View类的框架代码,我们将在接下来的章节更加深入的讨论:pu... 阅读全文
posted @ 2009-07-23 09:32 xirihanlin 阅读(1291) 评论(0) 推荐(0) 编辑