文章 2022-06-22 来自:开发者社区

关于安卓自定义view实现轮播图

前段时间自己自定义了一个轮播图,使用起来很简单,分享给大家使用,如有什么缺陷或是问题,请留言提出建议。我自定义的类叫做BannerView.java,整个轮播图的实现都在这个类里面,在这个类里面我向外提供了很多方法,可以根据项目情况或是个人喜欢定义,比如有一个设置指示器位置的方法(左中右,默认是居中),一个设置指示器样式的方法,默认是引用我自己画的圆点,想要其他样式可以自己去定义,还有一个就是播....

关于安卓自定义view实现轮播图
文章 2022-06-21 来自:开发者社区

android源码宇宙-android的Activity如何展示View

源码要点mContentParent:下文中的mContentParent实际类型是ActionBarOverlayLayout,是我们布局文件的直接父布局Activity的展示过程大概就是atms回调activity的启动方法,然后会进行初始化PhoneWindow、DecorView。初始化完成后会等待wms回调onResume的逻辑处理,这里的重点是我们的UI展示关键类ViewRootIm....

android源码宇宙-android的Activity如何展示View
文章 2022-06-14 来自:开发者社区

Android 自定义View之随机数验证码(仿写鸿洋)

前言本文面向自定义view新手,但是希望你最好有一定的理论知识,或基础概念,有的地方可能会一笔带过并不会细讲,细讲篇幅就太长了。本文仿写自鸿洋的自定义View (一),尽管过去了将近快7年之久,我觉得依然有学习价值。效果自定义View分类简单介绍一下自定义View分类:组合控件,继承自已有的layout,比如LinearLayout,然后通过LayoutInflater引入布局,然后处理相关事件....

文章 2022-06-14 来自:开发者社区

Android 自定义View之展开收起的Layout

效果分析效果图来看,点击事件触发view的展开收起,并在收起状态下保留了第一个子view显示,这个展开收起其实就是view的高度变化,所以只要控制好高度,就能很简单的实现这个效果。步骤1.初始化参数 设置方向等2.根据动画执行进度计算高度初始化class ExpandLinearLayout : LinearLayout { //是否展开,默认展开 private var isO...

Android 自定义View之展开收起的Layout
文章 2022-06-14 来自:开发者社区

Android 自定义View之随机数验证码(仿写鸿洋)

前言本文面向自定义view新手,但是希望你最好有一定的理论知识,或基础概念,有的地方可能会一笔带过并不会细讲,细讲篇幅就太长了。本文仿写自鸿洋的自定义View (一),尽管过去了将近快7年之久,我觉得依然有学习价值。效果自定义View分类简单介绍一下自定义View分类:组合控件,继承自已有的layout,比如LinearLayout,然后通过LayoutInflater引入布局,然后处理相关事件....

Android 自定义View之随机数验证码(仿写鸿洋)
文章 2022-06-13 来自:开发者社区

Android 动态添加View 并设置id

订阅专栏主页面布局(main_activity.xml)LinearLayout 里面加一个Button,注意这里的LinearLayout要有orientation<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/...

Android 动态添加View 并设置id
文章 2022-06-12 来自:开发者社区

Android 开发进阶: 自定义 View 1-1 绘制基础

自定义绘制的方式是重写绘制方法,其中最常用的是 onDraw()绘制的关键是 Canvas 的使用 Canvas 的绘制类方法: drawXXX() (关键参数:Paint)Canvas 的辅助类方法:范围裁切和几何变换可以使用不同的绘制方法来控制遮盖关系Canvas 类下的所有 draw- 打头的方法,例如 drawCircle() drawBitmap()。Paint 类的几个最常用的方法。....

文章 2022-06-10 来自:开发者社区

Android窗口管理分析(4):Android View绘制内存的分配、传递、使用

前文Android匿名共享内存(Ashmem)原理分析了匿名共享内存,它最主要的作用就是View视图绘制,Android视图是按照一帧一帧显示到屏幕的,而每一帧都会占用一定的存储空间,通过Ashmem机制APP与SurfaceFlinger共享绘图数据,提高图形处理性能,本文就看Android是怎么利用Ashmem分配及绘制的:View视图内存的分配前文Window添加流程中描述了:在添加窗口的....

文章 2022-06-10 来自:开发者社区

Android窗口管理分析(1):View如何绘制到屏幕上的主观理解

窗口管理可以说是Android系统中最复杂的一部分,主要是它涉及的模块比较多,虽然笼统的说是窗口管理,其实,除了WindowManagerService还包括SurfaceFlinger服务、Linux的共享内存及tmpfs文件系统、Binder通信、InputManagerService、动画、VSYNC同步技术等,一篇文章不可能分析完全,但是可以首先对于窗口的显示与管理有一个大概的轮廓,再分....

Android窗口管理分析(1):View如何绘制到屏幕上的主观理解
文章 2022-06-10 来自:开发者社区

Android自定义View:MeasureSpec的真正意义与View大小控制

自定义View是Android开发中最普通的需求,灵活控制View的尺寸是开发者面临的第一个问题,比如,为什么明明使用的是WRAP_CONTENT却跟MATCH_PARENT表现相同。在处理View尺寸的时候,我们都知道最好在onMeasure中设定好自定义View尺寸,那么究竟如何合理的选择这个尺寸呢。直观来说,可能有以下问题需要考虑:自定的View最好不要超过父控件的大小,这样才能保证自己能....

Android自定义View:MeasureSpec的真正意义与View大小控制

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

mPaaS 移动开发平台

mPaaS 源于蚂蚁集团金融科技,为 App 开发、测试、运营及运维提供云到端的一站式解决方案,致力于提供高效、灵活、稳定的移动研发、管理平台。 官网地址:https://www.aliyun.com/product/mobilepaas/mpaas

+关注