首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Android自定义实现滑动按钮

本文实例为大家分享了Android自定义实现滑动按钮的具体代码,供大家参考,具体内容如下 实现逻辑 1.创建一个类继承view类,实现里面的onMeasure() onDraw()方法 2.在 onMeasure...() 中需要调用setMeasuredDimension(viewWidth,viewheight),用来绘制按钮的位置区域 3.需要加载按钮的背景和滑块资源 并且转化为bitmap对象 4.获取背景图片的宽和高作为自定义控件的宽和高...5.获取滑块的宽度,用来调整按钮的开和关 6.在onDraw()方法中绘制出背景图片和滑块,并展示在页面中 7.创建一个触摸事件,用来监听按钮所在的位置 8.创建drawSlide方法,用来限制滑块的运行区间...heightMeasureSpec) { // super.onMeasure(widthMeasureSpec, heightMeasureSpec); //调用setMeasuredDimension绘制按钮的区域...(viewWidth, viewheight); } @Override protected void onDraw(Canvas canvas) { //重写drawBitmap,将控件的背景和滑块绘制到页面中

2.5K10
您找到你想要的搜索结果了吗?
是的
没有找到

速读原著-Android应用开发入门教程(图像、图形、文本的基本绘制)

9.2 图像、图形、文本的基本绘制 Android 中基本的绘制包括了图像、图形和文本绘制。...参考示例程序:ApiDemo 的AlphaBitmap(ApiDemo=>Graphics=>AlphaBitmap) 源代码:android/apis/graphics/AlphaBitmap.java...本程序在界面上自上而下一共绘制了 3 个内容,第一个是一个原始位图,第二个是经过变化的位图,第三个是几何图形。...3 个位图 } } 第 1 个图是直接对原始的图像进行了绘制;第 2 个图是在原始图像的基础上抽取了透明通道,所以绘制时画笔(Paint)的颜色起到了作用;第 3 个图是调用...drawIntoBitmap()绘制了一个具有渐变颜色的圆,并附加了文字。

40610

Android 应用开发】Canvas 精准绘制文字 ( 文本边界坐标解析 | 绘图位置 )

文章目录 一、文本边界坐标解析 二、绘图位置 一、文本边界坐标解析 ---- 在上一篇博客 【Android 应用开发】Canvas 精准绘制文字 ( 测量文本真实边界 | 将文本中心点与给定中心点对齐...原点坐标系的值 ; 下图中的原点位置 , 就是调用 Canvas 的 drawText 方法 , 传入的 x 值和 基线值 ; 下图中的 绿色矩形框是 Canvas 的绘图区域 , 橙色矩形框是 Canvas 绘制文本的实际区域...绘图区域 最左侧 距离 文本实际区域 的左侧这段空隙的宽度 ; right 值是 绘图区域 最左侧 距离 文本实际区域 的右侧这段空隙的宽度 ; 可以得到 文本区域 的中心值 , 距离 绘图区域 的值为...- 基线值 , 基线值是 0 , 正数 , 负数 , 0 都有可能 , 这里是 0 ; 一般是正数或 0 , 负数不常见 ; 二、绘图位置 ---- 使用 Canvas 的 drawText 方法绘制文字..., 传入 ( x , y ) 坐标 , x 是绘制区域的左侧 , y 是文本基线 , 绘制的位置如下 : 如果不是要求很精确的话 , 一定程度上可以理解为 传入的值 左下角的位置 ; 如果要精准到像素级别

1.8K10

Android 应用开发】Canvas 精准绘制文字 ( 测量文本真实边界 | 将文本中心点与给定中心点对齐 )

} 获取边界代码示例 : Rect rect = new Rect(); paint.getTextBounds(text, 0, text.length(), rect); 获取的边界值 , 并不是绘制文本的坐标..., 是使用 Paint 在 Canvas 中绘制文本的真实占用区域 , 如下图红色矩形框所在的区域 , 与文本的相对坐标 , 下图的红色矩形框的 右下角是 ( 0 , 0 ) 坐标位置 ; Rect...绘图区域 与 真实文本区域 的差异 , 就导致了 文字绘图 不准确 , 不好定位的问题 ; 二、将文本中心点与给定中心点对齐 ---- 给定中心点 ( x , y ) ; 绘制文本 , 使得 文本的中心点...与 给定的中心点对齐 ; 根据中心点位置 : 确定绘制文本的左侧位置 : x - (rect.left + rect.right) / 2 , 绘制文本 , 是下图红色矩形框的位置 , 文本的位置是不确定的..., 可能在红色矩形框内的任意位置 , 需要借助 Rect 边界确定文本位置 , 确定绘制文本的顶部位置 : y - (rect.top + rect.bottom) / 2 , 绘制文本 , 是下图红色矩形框的位置

1.3K20

安卓开发之简单组件使用

的父类;其中TextView的xml属性很多具体参考手册即可; 2、 由于TextView中只用于显示文字,如果图文混合可以绘制一个drawable对象即可 xml属性对照(部分) android:autoLink...是否将符合指定格式的文本转换单击的超链接形式(web、email、phone、map、all、none) android:cursorVisible设置文本框中的光标是否可见 android:drawableTop...在左侧绘制一个图像 android:editable是否可以编辑 android:ellipsize超过框长度如何处理(五个属性) android:gravity设置文本框内文本对齐方式 android...:hint文本框内容为空时,默认显示文字 android:password文本框是一个密码框 android:phoneNumber文本框只能输入数字 android:scrollHorizontally...组件ImageButton(按钮) 三、EditText组件(编辑框) 四、RadioGroup组件(单选组)RadioButton组件(单选框) 五、CheckBox组件(多选框) 六、ToggleButton

90660

《移动互联网技术》第六章 资源管理: 掌握定制控件样式、界面主题、绘制资源程序的编写方法

2、本单元学习要求 (1) 掌握各种资源的基本访问用法; (2) 掌握定制控件样式、界面主题、绘制资源程序的编写方法; (3) 掌握原生资源打包方法。...sp(scaled pixels,伸缩像素)主要用于字体显示,根据 Google 的建议,TextView 的文本字号最好使用 sp 做单位。 程序中用到的数组Android也推荐存入资源文件。...在按钮的属性里设置style属性值为定制按钮样式。按钮就会按照定义的文本和背景颜色来显示。...难点 (1) 绘制资源 Drawable代表了一大类资源。比如:图形、位图图像就是绘制的资源。...绘制资源的使用。 使用assets打包资源的方式。 2、本单元课后习题 1、如何打开res/raw目录中的数据库文件?

6910

Android CompoundButton

android.widget.Button      android.widget.CompoundButton RadioGroup不是CompoundButton的子类,所以不能直接使用CompoundButton...返回值 定义了的OnClickListener被调用返回True,否则返回False public void setButtonDrawable (Drawable d) 给按钮背景设置一个绘制对象...(如:图像) 参数 d 用作背景的绘制对象(如:图像) public void setButtonDrawable (int resid) 通过资源Id给按钮背景设置一个图像 参数 resid...参数 canvas 在画布上绘制背景 protected boolean verifyDrawable (Drawable who) 如果你的视图子类显示他自己的可视化对象,他将要重写此方法并且为了显示绘制返回...此操作允许进行绘制时有动画效果。   确认当重写从方法时,需调用父类相应方法。 参数 who 需判断的绘制对象(Drawable)。

84420

SwitchButton 开关按钮 的多种实现方式

刚开始接触开关样式的按钮是在IOS系统上面,它的切换以及滑动十分帅气,深入人心。 所谓的开关按钮,就是只有2个状态:on和off,下图就是系统IOS 7上开关按钮效果。...,他将要重写此方法并且为了显示绘制返回true。...参数                             who         需判断的绘制对象(Drawable)。如果是你要显示的对象,返回True,否则返回调用父类的结果。...返回值                            boolean 如果绘制对象(Drawable)已经在视图中显示,返回True否则返回false。并且此处不允许使用动画。...="" /> 这里的     android:textOn=""   表示:选中情况下显示的文本 android:textOff=""   表示:未选中情况下显示的文本 android:checked

3K70

android开关按钮

刚开始接触开关样式的按钮是在IOS系统上面,它的切换以及滑动十分帅气,深入人心。 所谓的开关按钮,就是只有2个状态:on和off,下图就是系统IOS 7上开关按钮效果。...,他将要重写此方法并且为了显示绘制返回true。...参数                             who         需判断的绘制对象(Drawable)。如果是你要显示的对象,返回True,否则返回调用父类的结果。...返回值                            boolean 如果绘制对象(Drawable)已经在视图中显示,返回True否则返回false。并且此处不允许使用动画。...="" /> 这里的     android:textOn=""   表示:选中情况下显示的文本 android:textOff=""   表示:未选中情况下显示的文本 android:checked

3.9K80

深入理解 Android Window系统

Window的作用 Window是Android窗口系统的核心,扮演着多重角色,包括: 界面绘制:Window负责将Activity定义的用户界面绘制到屏幕上,包括布局和视图的绘制。...每个Activity都与一个Window紧密相关联,Window代表了一个绘制区域,负责显示Activity的用户界面。...内容视图是开发者定义的用户界面布局,包括按钮文本框、图像等元素。DecorView通过将内容视图添加到自身来显示应用程序的用户界面。 标题栏和状态栏:DecorView还包括标题栏和状态栏等元素。...创建一个简单的Window 首先,让我们创建一个简单的Android Window,这个Window将包含一个文本视图。...Window并将一个文本视图添加到它的内容视图中。

43620

Android – Drawable 详解

用法 在不同情况下有很多绘制的类型,设置按钮的状态行为,创建伸缩的按钮背景和创建复合绘制图层。...例如,可以使用绘制的形状来更改按钮背景的形状,边框和渐变。 一个形状只是一个属性的集合,被合并来描述一个背景。形状可以用属性来描述,如圆角,背景渐变,间距填充,背景颜色固定,描边等。...Vector Drawables(矢量图) 这些XML是绘制的,可以定义复杂的基于矢量的图像,可以自动缩放以支持所有的密度。...运行时Drawables 我们可以通过访问具有绘制应用的视图的背景,在我们的Java代码的运行时访问drawable。...② TransitionDrawable - 绘制的对象,可以在两个drawable资源之间交叉淡入淡出。用于两个drawable之间的动画。

5.2K50

ToggleButton和Switch使用大全

一、ToggleButton ToggleButton(开关按钮)是Android系统中比较简单的一个组件,是一个具有选中和未选中双状态的按钮,并且需要为不同的状态设置不同的显示文本。...XML属性 相关方法 说明 android:checked setChecked(boolean) 设置该按钮是否被选中 android:textOff 设置当该按钮的状态关闭时显示的文本 android...:textOn 设置当该按钮的状态打开时显示的文本 接下来通过一个简单的示例程序来学习ToggleButton的使用用法。...android:thumb setThumbResource(int) 指定使用自定义Drawable绘制该开关的开关按钮 android:track setTrackResource(int) 指定使用自定义...Drawable绘制该开关的开关轨道 android:typeface setSwitchTypeface(Typeface) 设置该开关的文本的字体风格 接下来通过一个简单的示例程序来学习Switch

2.5K50
领券