广告
返回顶部
首页 > 资讯 > 移动开发 >Android自定义组件:1、什么是自定义组件、自定义组件的方式、定义自定义属性
  • 1036
分享到

Android自定义组件:1、什么是自定义组件、自定义组件的方式、定义自定义属性

属性自定义属性Android 2022-06-06 13:06:38 1036人浏览 独家记忆
摘要

声明:本教程不收取任何费用,欢迎转载,尊重作者劳动成果,不得用于商业用途,侵权必究!!! 目录 一、前言 二、什么是自定义组件 三、自定义组件的方式 1、组合现有组件 2、在某

声明:本教程不收取任何费用,欢迎转载,尊重作者劳动成果,不得用于商业用途,侵权必究!!!

目录

一、前言

二、什么是自定义组件

三、自定义组件的方式

1、组合现有组件

2、在某一个组件上进行扩展

3、完全自定义组件

四、定义自定义属性

1、attrs.xml 文件介绍

2、attrs.xml 文件具体写法

3、attrs.xml 文件解释

一、前言

最近项目中用到很多自定义组件的知识,所以想把几年前自学自定义组件的笔记整理一下和大家一起分享,也方便自己巩固。之后也会陆续把以前在公司项目当中比较经典的自定义组件案例,抽离出来和大家一起分享

二、什么是自定义组件

Android为我们提供了丰富的 UI组件,基本的应用已经足够了,但在实际开发中,如果我们想构建更加复杂的 UI视图,此时就需要使用自定义组件了。

三、自定义组件的方式

自定义组件的三种方式:

1、组合现有组件

组合现有Android默认提供的组件,继承ViewGroup或其子Layout类等布局类进行组合。

如:如果是我们自己写Layout布局,每次可能要一个个写或拖动进去。

那我们把这整个Layout布局定义成一个组件,下次就直接使用即可,相当于打包。

2、在某一个组件上进行扩展

调整现有Android默认提供的组件,继承View的子类具体类。

如:继承ImageView实现在图片上添加文字,继承Toast实现在文字下面添加图片等

3、完全自定义组件

继承View基类,里面界面及事件完全由自己控制。

如:我们知道所有组件都是继承View而来,那么你也就可以直接自己写一个类继承View,重写View里面的相关方法或事件,然后自己去控制操作。 这个是最原始的,完全自定义的,不是基于任何Android默认提供的组件去定义的。

四、定义自定义属性 1、attrs.xml 文件介绍

不管使用哪种自定义组件的方式,首先当然是你要写出自定义组件的一个类文件,

在这个类当中,如果你需要有自定义的属性。

所谓自定义属性是什么?

如:像android提供的默认组件,一般都有定义宽、高、字体大小或颜色的属性,

如果除了这些属性以外,还想在你的自定义组件里面,拥有提供自己的属性,这个就是自定义属性。

如何创建自定义属性文件?

这个时候我们就要使用到一个属性资源配置文件,它是一个xml文件,

然后将这个类里,需要外界传入值的属性,定义在这个属性资源配置文件中,

在工程里的 .../res/values/ 目录下创建一个 attrs.xml,

文件名 attrs由英文单词 attribute而来,见名知意的写法,

文件名并不是只能写成这样,这样写只有一个目的,别人一看就知道这个文件是属性资源文件了。

2、attrs.xml 文件具体写法

配置XML属性资源文件的方式,attrs.xml 文件 具体写法如下:



3、attrs.xml 文件解释

attrs.xml文件解释如下:


attrs.xml文件解释如下
resources 资源
declare-styleable 声明风格样式   name 风格样式的名称
attrs 子元素
name 属性名
fORMat 属性格式
定义具体的属性,format 表示这个属性的值的类型,类型有以下几种:
1、reference 
参考指定Theme中资源ID,这个类型的意思,就是你传的值可以是引用资源
2、string 字符串,
如果你想别人既能直接写字符串值,也可以用类似写"@string/test"引用资源的方式,可以写成 format="string|reference"
3、color 颜色
4、boolean 布尔值
5、dimension 尺寸值
6、float 浮点型
7、integer 整型
8、fraction 百分数
9、enum 枚举。只能在提供的值里面选一个,如下:
10、flag 位或运算

作者:luminal_Andy


--结束END--

本文标题: Android自定义组件:1、什么是自定义组件、自定义组件的方式、定义自定义属性

本文链接: https://www.lsjlt.com/news/29474.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Android自定义组件:1、什么是自定义组件、自定义组件的方式、定义自定义属性
    声明:本教程不收取任何费用,欢迎转载,尊重作者劳动成果,不得用于商业用途,侵权必究!!! 目录 一、前言 二、什么是自定义组件 三、自定义组件的方式 1、组合现有组件 2、在某...
    99+
    2022-06-06
    属性 自定义属性 Android
  • Android自定义组件:2、如何实现和使用自定义组件、自定义属性
    声明:本教程不收取任何费用,欢迎转载,尊重作者劳动成果,不得用于商业用途,侵权必究!!! 目录 一、前言 二、如何实现自定义组件 步骤1:写 attrs.xml 资源文件 1、...
    99+
    2022-06-06
    属性 自定义属性 Android
  • Android自定义控件之自定义组合控件(三)
    前言: 前两篇介绍了自定义控件的基础原理Android自定义控件基本原理详解(一)、Android自定义控件之自定义属性(二)。今天重点介绍一下如何通过自定义组合控件来提高布...
    99+
    2022-06-06
    Android
  • Android自定义控件之自定义属性(二)
    前言: 上篇介绍了自定义控件的基本要求以及绘制的基本原理,本篇文章主要介绍如何给自定义控件自定义一些属性。本篇文章将继续以上篇文章自定义圆形百分比为例进行讲解。有关原理知识请参...
    99+
    2022-06-06
    属性 自定义属性 Android
  • 自定义admin组件
    配置路由 1 新建一个项目, 创建一个app01和stark应用,stark创建一个service包,并在service下创建stark.py。然后注册app   2 仿照site.py的注册代码,写stark.py代码: cla...
    99+
    2023-01-31
    自定义 组件 admin
  • android 自定义控件 自定义属性详细介绍
    自定义控件在android中无处不见,自定义控件给了我们很大的方便。比如说,一个视图为imageview ,imagebutton ,textview 等诸多控件的组合,用的地...
    99+
    2022-06-06
    自定义 自定义控件 属性 自定义属性 Android
  • Android自定义封装banner组件
    自定义封装 banner 组件,供大家参考,具体内容如下1. 效果图预览 2.基本功能一个简单方便的轮播图组件,基于viewpager 基础上进行的封装。可设置 项目中图片,网络图片, View;支持循环自动播放,手势滑动切换,i...
    99+
    2023-05-31
    android banner 组件
  • android自定义组件实现方法
    本文实例讲述了android自定义组件实现方法。分享给大家供大家参考。具体如下: atts.xml: <?xml version="1.0" encoding...
    99+
    2022-06-06
    方法 Android
  • android怎么自定义组合控件
    要自定义一个组合控件,你可以按照以下步骤进行:1. 创建一个新的类,继承自现有的Android控件类,例如LinearLayout或...
    99+
    2023-08-09
    android
  • vue怎么自定义keepalive组件
    本文小编为大家详细介绍“vue怎么自定义keepalive组件”,内容详细,步骤清晰,细节处理妥当,希望这篇“vue怎么自定义keepalive组件”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。为什么会出现这种情...
    99+
    2023-07-02
  • Android自定义控件如何在XML文件中使用自定义属性
    目录前言一、为什么需要自定义控件二、具体步骤1.首先我们创建一个 layout xml文件:2.为自定义控件创建java类:3.在res/values下,新建一个attrs.xml文...
    99+
    2023-05-14
    Android XML自定义属性 Android 自定义控件
  • vue+element自定义查询组件
    本文主要介绍vue项目,在引入element的前提下,对组件进行二次封装实现通过配置项直接布局。 一、查询条件组件化 结合EventBus.js的使用,传递事件更高效,可以避免各种复...
    99+
    2022-11-12
  • Vue组件中的自定义事件是什么
    小编给大家分享一下Vue组件中的自定义事件是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!主要介绍组件的自定义事件的概念,使用等。何为组件自定义事件:组件自定...
    99+
    2023-06-29
  • 如何在Android中自定义UI组件
    如何在Android中自定义UI组件?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。Android开发自定义UI组件实现红色小球跟随手指移动要写实现自定义UI组件,要创建一个Ba...
    99+
    2023-06-15
  • Flex中怎么自定义itemeditor组件
    在 Flex 中,可以通过自定义 ItemEditor 组件来实现自定义的编辑器。以下是一个简单的示例:1. 首先,创建一个自定义的...
    99+
    2023-09-27
    Flex
  • vue2.0中怎么自定义Echarts组件
    这期内容当中小编将会给大家带来有关vue2.0中怎么自定义Echarts组件,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1、自定义 图表 组件Echarts.vue&l...
    99+
    2022-10-19
  • vue自定义翻页组件的方法
    本文实例为大家分享了vue自定义翻页组件的具体代码,供大家参考,具体内容如下 效果图如下: 1、在components建立page.vue文件 <template>  ...
    99+
    2022-11-13
  • 详解Android自定义控件属性
    在Android开发中,往往要用到自定义的控件来实现我们的需求或效果。在使用自定义 控件时,难免要用到自定义属性,那怎么使用自定义属性呢? 在文件res/values/下新建...
    99+
    2022-06-06
    属性 Android
  • JavaScript中自定义swiper组件详解
    目录效果展示组件设置步骤1步骤2步骤3使用组件步骤1步骤2步骤3总结效果展示 组件设置 步骤1 在pages目录下,新建文件夹components 步骤2 在components下...
    99+
    2022-11-12
  • 浅谈VUE uni-app 自定义组件
    1.父组件向子组件传递数据可以通过 props 2.子组件向父组件传递数据可以通过自定义事件,父组件自定义事件,子组件触发父组件的事件,并传传递数据 3.子组件可以定义插槽slot,...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作