【Android】自定义控件学习:Toggle

本文介绍了在Android中自定义Toggle控件的步骤,包括继承View,设置图样、大小,重写onMeasure()和onDraw()方法,实现拖动滑块功能,并通过接口回调更新状态。同时讲解了如何在XML中声明自定义属性并使用。
摘要由CSDN通过智能技术生成
昨晚我写的这么详细的文章....提交成功后我就回去睡觉了.....今天一大早起来不见了,TAT 随便写点自己能看懂的当笔记吧。这个控件是我学习他人的~

1、创建新的toggle类继承自view(其中含有attributeSet attrs的构造方法是和xml有关的),然后可以通过重写setBackgroundResource()或者自己的方法去设置好控件的图样,大小,空间啥的。记得要在layout布局里面导包(记得加Id),才能使用我们自己的控件。
2、重写view中的绘制方法
view中主要是onmeasure()和ondraw()在先后起作用。而viewgroup中间还有个onlayout(),在这我们继承的是view,所以先测量,再绘画。
首先要找到控件上的图片,可以在setBackgroundResource()或者自己的方法中用bitmap=bitmapfactory.decodeResource(getResources,传下来的int R值)来找到图片,设置它。
然后再重写onMeasure()方法
protected void onMeasure(int widthMeasureSpec,int heightMeasureSpec){
    super.onMeasure(widthMeasureSpec,heightMeasureSpec);
    }
查看view中的源码发现onmeasure是有setmeasuredemention这个方法来设置宽高的,所以就可以直接也再onmeasure下重写这个方法。然后ondraw,new个画笔,
// 1. 绘制背景
canvas.drawBitmap(图像
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值