【Android开发API】用户界面 - 自定义控件 - Custom Components.pdf

【Android开发API】用户界面 - 自定义控件 - Custom Components.pdf

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
【Android开发API】用户界面 - 自定义控件 - Custom Components

eoe 移动开发者社区 负责⼈:GloriousOnion 主任务原文链接:/guide/topics/ui/custom-components.html Android平台提供了⼀套完备的、功能强⼤的组件化模型 于搭建 户界面,这套组件化模型以View和 ViewGroup这两个基础布局类为基础 。平台本身已预先实现了多种 于构建界面的View⼦类和ViewGroup⼦类, 他们被分别称为部件 (widget)和布局 (layout) 。 部件 (widget)包括Button 、TextView 、EditText 、ListView 、 heckBox 、RadioButton 、Gallery 、Spinner等这 些常 部件以及有着专门 途的Auto ompleteTextView 、ImageSwitcher和TextSwitcher 。 布局 (layout)包括:LinearLayout 、FrameLayout 、RelativeLayout等,如果需要查看更多实例,请查看通 部 件对象 。 如果这些已有部件和布局不能满足需求,您可以按需实现View⼦类 。如果对已有的部件和布局进行⼩调整就能满 足需求,可以通过继承部件或布局并重载特定方法的方式轻松实现 。 开发者通过构造View⼦类可以对屏幕元素的样式及功能进行精确控制 。为了使您对定制View 的可控性有⼀个直观 了解,下面给出可以对定制View进行操作的⼏个实例: 您可以将View定制成特别样式,比如⼀个使 2D图片渲染的音量调节器可以做成模拟电路控制的样⼦ 。 您可以将⼀组View组件合成为⼀个新的独立组件,比如制作⼀个下拉列表框 (弹出列表和输⼊框的组合) 、双区 域选择控制器 (有左 、右两个选择区域,选择框中的元素可随意切换其左右位置)等等 。 您可以重载EditText组件的屏幕绘制方式 (NotePad教程很好地利 了这⼀点,使之产生了带有下划线的记事本页 面) 。 您可以监听多种事件 (包括按下按键事件),并可以定制这些事件的处理方式 。 以下⼩节会介绍如何定制View ,并将其 于App 中。若需要更详尽的参考信息,请查看View类 。 基基本本方方法法 以下是定制View组件的步骤总览: 使使新新类类继继承承 自自View类类或或其其⼦⼦类类 ;; 重重载载父父类类特特定定方方法法 。。被被重重载载 的的父父类类方方法法通通常常 以以“on”开开头头 ,,例例如如 ::onDraw() 、、int) onMeasure() onKeyDown()](/reference/android/view/View.htm #onKeyDown(int,) ,, 这这与与您您重重载载Activity或或ListActivity 中中的的事事件件 以以控控制制 生生命命周周期期和和钩钩⼦⼦函函数数 的的做做法法类类似似 ;; 使使 该该扩扩展展类类 。。完完成成后后 ,,这这个个扩扩展展类类便便可可代代替替其其父父 类类使使 ,,并并体体现现 出出新新 的的特特性性 。。 ⼩提示:扩展类可以被定义为使 它的Activity 的内部类,这样做可以控制扩展类的范文权限,但这并不是必须 的 (有可能您需要创建⼀个可以在App 中多处 到的扩展类) 。 完完全全定定制制 的的组组件件 不论您对于视图组件的期望多么夸张,完全定制的组件都可以实现,包括实现⼀个看起来像旧模拟仪表盘的图形 化紫外线辐照计,或者实现⼀个有着进度标记的长文本使之就像⼀台卡拉ok机的字幕 。总之,这些特殊功能不可 以通过已有组件实现,而且组合使 已有组件也不能满足需求 。 幸运的是,您可以轻松构建⼀个样式 、外观完全满足您需要的新组件,包括控制新组件在屏幕上所 占区域⼤⼩和 在运行时的耗电量 (需要牢记的是您的App将安装在相比⼯作站电量要有限得多的移动设备上) 。 创建⼀个完全定制的组件需要以下⼏步: 完完全全定定制制 的的组组件件通通常常继继承承 自自View类类 ,,所所 以以搭搭建建完完全全 定定制制 的的组组件件 的的第第⼀⼀步步通通常常是是继继承承该该类类 ;; 可可 以以向向完完全全定定制制 的的组组件件加加⼊⼊⼀⼀个个接接收收XML属属性性和和参参 数数

文档评论(0)

yan698698 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档