自定义View-基础

自定义View-基础

2023年7月15日发(作者:)

⾃定义View-基础先扯⼀点题外话,就现在的 Android 市场来说,可以说是不容乐观的,只不过是相对的,Android 的坑位有限,⼈⼜相对⽐较多,加上资本寒冬,像我⼀样的菜鸟是最为令⼈担忧的。那么能怎么办呢?只有进阶到⾼级才⾏,才能混的下去,⾼级 Android ⼯程师的市场还是很⼴阔的,所以⼀起努⼒吧,少年们!想进阶到⾼级,⾃定义 View 这部分是必须要攻克的,这篇也算是开篇,主要翻译⼀下官⽅⽂档,在补⼀下基础部分,像坐标系,位置获取⽅式,颜⾊使⽤⽅式等,下⾯就动起来吧!main1. View 简介1.1 View 介绍public class View

extends Object implements ck, ck, AccessibilityEventSourceView 继承 Object,并实现了⼀些接⼝,现在对这些有⼀个印象就⾏,等具体分析源码时,再来看。This class represents the basic building block for user interface components. A View occupies arectangular area on the screen and is responsible for drawing and event handling. View is thebase class for widgets, which are used to create interactive UI components (buttons, text fields, etc.). TheViewGroup subclass is the base class for layouts, which are invisible containers > that hold other Views (orother ViewGroups) and define their layout 的定义:View 是⽤户交互组件的基本构建块。View 占据屏幕上的⼀个矩形区域,并且负责绘制和处理事件。View 是组件的基类,这些组件⽤来产⽣交互功能(如按钮。⽂本框等)。ViewGroup 是 View 的⼦类,它是⽤来管理布局的基类,它是不可见的,⽤来装载其他的⼦ View或者其他的 ViewGroup,并且可以设置布局的属性。通过这段话对 View 有了⼀个初步的认识,平时我们在 XML 中定义的布局就是⼀个 ViewGroup,界⾯的顶级 View,也是⼀个ViewGroup(DecorView 是⼀个 FrameLayout)Using Views窗⼝中的所有视图都排列在 View 的树结构中,可以通过代码或通过在⼀个或多个XML布局⽂件中指定视图来添加 View 树结构中。 有许多专门的视图⼦类充当控件或能够显⽰⽂本,图像或其他内容。Once you have created a tree of views, there are typically a few types of common operations you may wish to perform:⼀旦创建了⼀个树结构,会有⼀系列的通⽤操作,主要包括以下⼏点:Set properties(设置属性,如在给 TextView 设置⽂本)Set focus(设置焦点)Set up listeners(设置监听,如给 Button 设置 kListener)Set visibility(设置 View 是否可见 setVisibility(int))Implementing a Custom View(⾃定义 View)官⽅⽂档中这部分实际上就是给了⼀个⼤体的说明个,并不是详细的⼀个⾃定义 View 的教程。To implement a custom view, you will usually begin by providing overrides for some of the standardmethods that the framework calls on all views. You do not need to override all of these methods. In fact,you can start by just overriding onDraw().为了实现⼀个⼦⾃定义 View,你将要重写 View 所调⽤的框架中的标准⽅法,不需要全部重写,事实上,仅仅调⽤ onDraw ⽅法就⾏。也就是说,通过调⽤ onDraw ⽅法就可以完成简单的⾃定义 View,对于复杂的,需要我们重写 View 的⽐较重要的三个⽅法,即 onMeasure、onLayout、onDraw。官⽅给出了⼀个表格,这个表格是对 View 中主要的⽅法进⾏了⼀个归类,可以作为⾃定义 View 操作的⼀个主要参考和指导。这⾥就不翻译了,相信⾃⼰可以看明⽩。image1.2 View 属性这⾥的属性并不是 View 可以设置属性,⽽是官⽅⽂档介绍的 View 相关的⼀些东西,下⾯⼀起来看下。建议对这部分通读⼀下,对 View 会有⼀个整体的感知。IDs视图可能会有⼀个与它相关的 integer 类型的 id,即我们使⽤布局时定义的那个 id。这些 id 是在布局 XML ⽂件中设置的,通过这些 id 能够找到树结构中的 对应的 View,使⽤的⽅式也是我们很熟悉的:

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信