- 浏览: 87799 次
- 性别:
- 来自: 北京
最新评论
-
LiuYiJie2007:
public static String getPublicK ...
Android publickey获取 -
LiuYiJie2007:
getPublicKey( )是你自己写法方法 是什么?new ...
Android publickey获取 -
liujia9234:
我试了,不行,最不靠谱了
最靠谱的禁止ViewPager滑动方法 -
kedongjun:
非常强大
关于android通讯录加载大数据的优化问题 -
xunhuan01:
view.getImageMatrix(), savedMat ...
多点触摸放大图片的自定义listener
public class SlidButton extends View implements OnTouchListener { private boolean nowChoose = false;// 记录当前按钮是否打开,true为打开,false为关闭 private boolean onSlip = false;// 记录用户是否在滑动 private float downX, nowX; // 按下时的x,当前的x private Rect btn_on, btn_off;// 打开和关闭状态下,游标的Rect private boolean isChgLsnOn = false;//是否设置监听 private OnChangedListener changedLis; private Bitmap bg_on, bg_off, slip_btn; public SlidButton(Context context, AttributeSet attrs) { super(context, attrs); init(); } public SlidButton(Context context) { super(context); init(); } @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { // TODO Auto-generated method stub setMeasuredDimension(bg_on.getWidth(), bg_on.getHeight()); } private void init() { // 载入图片资源 bg_on = BitmapFactory.decodeResource(getResources(), R.drawable.sild_bg_on); bg_off = BitmapFactory.decodeResource(getResources(), R.drawable.sild_bg_off); slip_btn = BitmapFactory.decodeResource(getResources(), R.drawable.sild_btn); // 获得需要的Rect数据 btn_on = new Rect(0, 0, slip_btn.getWidth(), slip_btn.getHeight()); btn_off = new Rect(bg_off.getWidth() - slip_btn.getWidth(), 0, bg_off.getWidth(), slip_btn.getHeight()); setOnTouchListener(this); } @Override protected void onDraw(Canvas canvas) { // TODO Auto-generated method stub super.onDraw(canvas); Matrix matrix = new Matrix(); Paint paint = new Paint(); float x; { if (nowX<(bg_on.getWidth()/2)) //滑动到前半段与后半段的背景不同,在此做判断 canvas.drawBitmap(bg_off, matrix, paint);//画出关闭时的背景 else canvas.drawBitmap(bg_on, matrix, paint);//画出打开时的背景 if (onSlip) {//是否是在滑动状态, if(nowX >= bg_on.getWidth())//是否划出指定范围,不能让游标跑到外头,必须做这个判断 x = bg_on.getWidth() - slip_btn.getWidth()/2;//减去游标1/2的长度 else x = nowX - slip_btn.getWidth()/2; }else { if(nowChoose)//根据现在的开关状态设置画游标的位置 x = btn_off.left; else x = btn_on.left; } if (x < 0 ) //对游标位置进行异常判断.. x = 0; else if(x > bg_on.getWidth() - slip_btn.getWidth()) x = bg_on.getWidth() - slip_btn.getWidth(); canvas.drawBitmap(slip_btn, x,0, paint);//画出游标. } } @Override public boolean onTouch(View v, MotionEvent event) { switch (event.getAction()) {//根据动作来执行代码 case MotionEvent.ACTION_MOVE://滑动 nowX = event.getX(); break; case MotionEvent.ACTION_DOWN://按下 if (event.getX() > bg_on.getWidth() || event.getY() > bg_on.getHeight()) return false; onSlip = true; downX = event.getX(); nowX = downX; break; case MotionEvent.ACTION_UP://松开 onSlip = false; boolean lastChoose = nowChoose; if (event.getX() >= (bg_on.getWidth()/2)) nowChoose = true; else nowChoose = false; if(isChgLsnOn && (lastChoose != nowChoose))//如果设置了监听器,就调用其方法. changedLis.OnChanged(nowChoose); break; default: break; } invalidate(); return true; } public void SetOnChangedListener(OnChangedListener l){//设置监听器,当状态修改的时候 isChgLsnOn = true; changedLis = l; } public interface OnChangedListener { abstract void OnChanged(boolean checkState); } }
发表评论
-
Android_低版本使用ActionBar
2014-08-26 11:09 1095转载 http://blog.csdn.net/tianjf0 ... -
如何屏蔽android webview高度选中框
2014-02-19 12:04 747如标题所述,解决方法是在 html的样式中加入 *{-webk ... -
屏蔽ScrollView惯性滚动的方法
2013-08-08 13:36 5712ScrollView中有一种惯性滚动的效果,想让这个Scrol ... -
android 图片LOMO效果
2013-07-25 13:59 871import android.graphics.Bitmap; ... -
GitHub最火的android 项目
2013-07-25 13:14 779GitHub在中国的火爆程度无需多言,越来越多的开源项目迁移到 ... -
listview 点击列表项时,项中的Button会触发点击效果
2013-06-05 19:21 1283开发中,难免会在列表项中, 加入Button ,而button ... -
圆形不滚动的进度条
2013-05-17 11:38 848这种效果的进度条 代码如下: package com. ... -
最靠谱的禁止ViewPager滑动方法
2013-05-15 14:44 4957最近做项目要求某种情况下ViewPager不能滑动,在网上找了 ... -
viewpager主页面响应子页面 onkeydown事件的方法
2013-05-13 19:35 1618大家在开发中不少地方要用到ViewPager这个类,ViewP ... -
Mina 学习笔记 TCP主要接口
2013-05-05 23:21 1224(1.)IoService: 这个接口 ... -
android动画插件器
2013-04-27 10:01 830首先要了解为什么需要插值器,因为在补间动画中,我们一般只定义关 ... -
imageView 的 android:maxHeight,maxWidth属性
2013-03-29 10:17 814大家使用android:maxHeight,maxWidth属 ... -
android中获取下载地址文件的类型的方法
2013-03-28 11:33 1025MimeTypeMap mimeTypeMap = Mime ... -
res与res-auto的区别
2013-03-27 14:55 3961通常我们在布局文件中使用自定义属性的时候 会这样写 xmln ... -
TextView使用SpannableString设置复合文本
2013-03-23 23:35 8791、BackgroundColorSpan 背景色 Sp ... -
Android编程之SparseArray<E>详解
2013-03-21 23:03 984一、构造 从构造方法我 ... -
判断系统是否支持 DownloadManager服务
2013-03-18 14:25 862public static boolean isDownloa ... -
android ndk native_activity.h
2013-03-12 15:25 1767#ifndef ANDROID_NATIVE_ACTIVITY ... -
android ndk obb.h
2013-03-12 15:14 1133#ifndef ANDROID_OBB_H #define A ... -
Android NDK APIs
2013-03-12 14:53 983使用 Android NDK 的一般方法: 1、假如想要使用f ...
相关推荐
本篇文章将深入探讨如何在Android中创建一个自定义的滑动开关控件。 首先,我们需要了解滑动开关的基本构成。滑动开关通常由两部分组成:一个可滑动的轨道(track)和一个滑块(thumb),用户通过拖动滑块在轨道上...
本示例提供的"qt5仿安卓苹果自定义滑动开关控件.rar"就是一个这样的实践,它实现了类似Android和iOS系统中的滑动开关(Slider或Switch)组件,能够清晰地显示开关的状态,并且通过使用定时器来控制滑动动画,增加了...
通过以上步骤,我们可以创建一个功能完备且可定制的滑动开关控件。这个控件不仅可以直接应用于项目中,也可以作为一个基础,根据设计需求调整样式和动画效果。在实际开发过程中,可以参考提供的"开关按钮"资源文件...
开关按钮大家应该很熟悉,在设置里面经常遇到,切换时候的滑动效果比较帅气。通常说的开关按钮,有两个状态:on、off。大部分的开关按钮控件,基本上有两大类,第一类是纯代码绘制,这种对代码的掌控度要求比较高,...
vb6 控件源码,左右滑动开关,代码实现简单清晰 适用场景 1.基本满足checkbox业务需求 2.状态显示 当前版本功能描述 1.只添加了onClick事件 2.主题颜色修改 3.自适应控件大小
iOS系统中的滑动开关设计简洁、直观,而“Android超炫自定义滑动开关控件”则是在Android平台上对这种设计的再现。 实现这个自定义控件通常需要以下步骤: 1. **绘制图形**:首先,你需要设计开关的两种状态,即...
本教程将深入探讨如何实现一个滑动选择开关(Slide Switch)的自定义控件,该控件通常用于开启或关闭某个功能,如开启蓝牙、Wi-Fi等。 首先,我们需要创建一个新的Java类,继承自Android的`View`类或者`...
这篇博客文章的配套源码提供了一个自定义滑动开关的实现,让我们深入探讨这个自定义控件的设计和实现。 首先,滑动开关的基本原理是利用Android的View类或者CompoundButton类进行扩展。在这个例子中,开发者可能...
本文将深入探讨如何创建一个自定义的滑动开关控件,通过一个实际的案例——`ToggleButton`,来总结自定义View控件的编写流程。我们将讨论以下几个关键步骤: 1. **基础准备**:首先,我们需要创建一个新的Java类,...
这个"滑动开关按钮.zip"文件看起来是一个Android应用的压缩包,包含了与一个名为"MySlipSwitch"的自定义滑动开关控件相关的资源和代码。 首先,我们可以看到这个应用的版本号为0.2,这表明它可能是一个早期开发阶段...
在本压缩包"Android 滑动开关按钮源码.rar"中,很可能包含了一个自定义的滑动开关控件的实现代码。下面我们将深入探讨滑动开关在Android中的工作原理、设计与自定义,以及如何在实际项目中应用。 1. **滑动开关的...
在Android开发中,为了提供与iOS类似的用户体验,我们...通过上述步骤,开发者可以创建出具有良好用户体验的滑动开关控件。在实际项目中,还可以根据需求进一步扩展,例如增加开关状态的动态改变、滑动速度检测等功能。
自己用WPF的XAML语言写的一个类似于苹果手机上的滑动按钮的开关,可以直接使用,程序比较简单易懂,没有任何生涩的引用,涉及WPF的资源定义,控件布局,模板自定义,事件触发,动画实现等基本知识,只是新手学习如何...
"android之自定义开关控件"这个主题旨在教你如何在Android平台上创建一个类似苹果iOS Toggle的自定义开关组件。以下是对这个主题的详细讲解: 一、基础知识 在Android中,开关系列的控件主要包括Switch和...
本资源提供了关于安卓滑动开关按钮的源码,可以帮助开发者深入理解其工作原理,并自定义自己的滑动开关控件。 滑动开关按钮在安卓系统中主要由`Switch`类或者`ToggleButton`类实现,它们都是`CompoundButton`的子类...
6. **XML布局**:在布局文件中添加自定义滑动开关控件,并设置相关属性,如宽度、高度、颜色、初始状态等。 7. **交互逻辑**:在Activity或Fragment中获取滑动开关实例,绑定监听器,根据开关状态执行相应的业务...
这里我们关注的是如何使用样式(style)来创建一个滑动开关,这种开关通常被称为ToggleSwitch,其视觉效果类似于传统的复选框(checkbox),但提供了更直观的开/关操作体验。 滑动开关在许多用户界面设计中都很常见,它...
2. 滑动动画:当用户滑动开关时,滑块应有平滑的过渡效果。可以通过`ObjectAnimator`或者手动改变滑块位置并重绘View来实现动画效果。 3. 状态管理:记录开关的当前状态,并在触控事件中更新。可以使用一个布尔变量...
在Android平台上,为了实现与iOS类似的滑动开关效果,开发者通常会采用自定义控件或者第三方库。 iOS的开关按钮(UISwitch)具有独特的视觉样式,包括一个可滑动的小圆点,当用户向左或向右滑动时,圆点会在两种...
总结来说,创建一个自定义滑动开关控件,需要理解Android控件的继承体系,定义和使用自定义属性,处理触摸事件,以及绘制和动画效果的实现。这个过程涉及到了Android UI开发的多个方面,对提高开发者在Android界面...