阳光沙滩-课程笔记 阳光沙滩-课程笔记
首页 (opens new window)
VIP (opens new window)
  • 课程笔记

    • 《Android项目喜马拉雅FM》
    • 《Android项目领券联盟》
    • 《AndroidStudio技巧》
    • 《Android自定义控件》
    • 《Android开发基础》
    • 《Android约束布局》
    • 《AOSP安卓开源项目》
    • 《RecyclerView》
  • 《领券联盟Nuxt.js》
  • 《博客系统后台管理系统vue.js》
  • 《博客系统门户Nuxt.js》
  • 《博客系统前后端分离后台》
  • 《博客系统部署》
  • 《摸鱼君后台》
  • 《OTA升级管理系统》
  • 阳光沙滩API (opens new window)
  • 领券联盟API (opens new window)
  • 博客系统API (opens new window)
首页 (opens new window)
VIP (opens new window)
  • 课程笔记

    • 《Android项目喜马拉雅FM》
    • 《Android项目领券联盟》
    • 《AndroidStudio技巧》
    • 《Android自定义控件》
    • 《Android开发基础》
    • 《Android约束布局》
    • 《AOSP安卓开源项目》
    • 《RecyclerView》
  • 《领券联盟Nuxt.js》
  • 《博客系统后台管理系统vue.js》
  • 《博客系统门户Nuxt.js》
  • 《博客系统前后端分离后台》
  • 《博客系统部署》
  • 《摸鱼君后台》
  • 《OTA升级管理系统》
  • 阳光沙滩API (opens new window)
  • 领券联盟API (opens new window)
  • 博客系统API (opens new window)
  • Android开发基础

  • Android项目-喜马拉雅FM

  • Android项目-领券联盟

  • AndroidStudio使用技巧

  • Android-Jetpack

  • ConstraintLayout

  • RecyclerView

  • 自定义控件系列

    • 自定义控件课程规划
      • AndroidView体系
      • Android自定义控件类型
      • 自定义组合控件例子
      • 自定义View例子
      • 自定义ViewGroup例子
    • Android-View体系
    • Android自定义控件的分类
    • Android自定义控件的步骤
    • 安卓开发-控件自定义属性
    • 自定义控件手表相关的素材和图解
    • 喜马拉雅项目添加FlowTextLayout控件
    • 自定义组合控件-轮播图
    • Android开发无缝的跑马灯控件
    • 4G信号控件走一个吧,继续摸鱼
    • NestedScrollView嵌套RecyclerView如何解决呢?
    • 侧滑删除,slideView例子
  • AOSP

  • ADB

  • 安卓
  • 自定义控件系列
TrillGates
2021-09-23
目录

自定义控件课程规划

# 自定义控件

很多同学都害怕自定义控件,从无到有,不知道怎么下手。结果这课程的话,你就知道了自定义控件的来龙去脉了。

你会学习在写自定义控件之前如何去分析,怎么下手,都可以步骤化。

# 课程内容

20191102_162525.png

# AndroidView体系

了解android的View体系,才知道后面我们步骤写Android自定义控件做准备。

要明白View和ViewGroup。

要能判断常用的控件是属于View还是ViewGrop,接着才有自己要写的控件属于View还是ViewGroup。

为什么呢?

因为自定义View跟自定义ViewGroup的步骤,套路不一样。

# Android自定义控件类型

Android自定义控件呢,我们可以分为三类:

  • 自定义View(包括对现有View的修改)
  • 自定义ViewGrop(包括对现有ViewGroup的修改)
  • 自定义ViewGrop

# 自定义组合控件例子

自定义组合控件,其实就是把多个现在有控件整合在一起,把复杂的操作封装起来,把简单的操作暴露出去。

比如说我们要做以下这个控件:

20191102_171654.png

当然可以重头开始绘制,从无到有。

我们也可以使用两个buttonl+一个TextView或者EditText组合起来。

然后把复杂的逻辑封装起来,比如说,上限和下限的判断,比如说增加梯度,比如说阀值,达到一定的值会改变颜色之类的。这些复杂的操作封装起来。对外只暴露数据变会的回调通知和设置数值/获取数值的方法即可。

别人拿到你的控件,不关心怎么实现,只关心使用即可。

# 自定义View例子

自定义View,什么是View,从控件的角度来理解,我们可以这样判断。如果控件里没有孩子的,没有子View的,就是View,比如说Button,TextView,ProgressBar,ImageView,这些都是View.

# 自定义ViewGroup例子

自定义ViewGrop,什么是ViewGroup,用来包含孩子的,控制子View的摆放的,是容器。ViewGrop里还可以包含着ViewGroup和View。比如说,LinearLayout,RetiveLayout,RecyclerView,ListView,ViewPager...这些都是ViewGrop。

好啦,这个只做了解,详情请同学们去看接下来的课程吧!相信你学完以后,会对自定义控件有信心的,加油!

编辑 (opens new window)
RecyclerView显示多种类型
Android-View体系

← RecyclerView显示多种类型 Android-View体系→

Theme by Vdoing | Copyright © 2022-2022 sunofbeach.net
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式