您的位置:首页 > 移动开发 > Android开发

Android 中文 API (16) —— AnalogClock

2010-10-21 10:01 531 查看
前言

  关键字: android.widget.AnalogClock, Android 2.2 r1 AnalogClock, AnalogClock api

  本章翻译的是android.widget.AnalogClock,译为时钟/模拟时钟。从本章开始,系列翻译文章正式更名为“Android 中文 ?”,如当前系列为“Android 中文 API”,此外已经有人在翻译测试相关的内容,欢迎一起参与Android API 的中文翻译行动,联系我over140@gmail.com。

声明

  欢迎转载,但请保留文章原始出处:)

    博客园:http://www.cnblogs.com

    农民伯伯: http://www.cnblogs.com/over140/
版本

  Android 2.2 r1

正文

  一、结构

    public class AnalogClock extends View

    java.lang.Object

      android.view.View

       android.widget.AnalogClock

  二、类概述

    


    这是一个带有时针和分针的模拟时钟控件。

  三、受保护的方法

protected void onAttachedToWindow ()

视图(AnalogClock)附在窗体时调用。在调用时,视图在窗体表面并开始绘制。注意保证这个方法在onDraw(Canvas)以前被调用,但是它可以在首次onDraw以前任何时间调用——包括onMeasure(int, int)之前或之后。

protected void onDetachedFromWindow ()

视图(DigitalClock)从窗体上分离(移除)时调用,同时窗体表面不再绘制视图。

protected void onDraw (Canvas canvas)

实现你自己的绘制。

参数

canvas 在画布上绘制背景

protected void onMeasure (int widthMeasureSpec, int heightMeasureSpec)

  测量这个视图以确定其内容的高度和宽度。通过measure(int, int)来调用这个方法,并且应该由子类重写以提高内容测量的效率和精确度。

  约定:当该方法被重写时,你必须调用setMeasuredDimension(int, int)来存储已测量视图的高度和宽度。否则将通过measure(int, int)抛出一个IllegalStateException异常。调用父类的onMeasure(int, int)方法是一个有效的办法。

  父类的实现是以背景大小为默认大小,除非MeasureSpec(测量细则)允许更大的背景。 为了更好测量内容子类应该重写onMeasure(int, int)。

  如果这个方法被重写,子类有责任确保测量它的高度和宽度至少是视图的最小宽度和高度(getSuggestedMinimumHeight()和getSuggestedMinimumWidth())。

参数

widthMeasureSpec 由于父类有横向空间要求,参见View.MeasureSpec。

heightMeasureSpec 由于父类有纵向空间要求,参见View.MeasureSpec。

protected void onSizeChanged (int w, int h, int oldw, int oldh)

布局期间当视图的大小发生改变时调用。如果只是添加到视图,调用时显示的是旧值0。(译者注:也就是添加到视图时,oldw和oldh返回的是0)

    参数

      w   视图当前宽度

      h   视图当前高度

      oldw 视图以前的宽度

      oldh 视图以前的高度

  四、PDF下载

    CSDN: http://download.csdn.net/source/2772172

  

结束

   翻译组目前成员15名,相关计划正在进行中,期待51名成员的那天早日到来,欢迎大家踊跃参加。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: