自定义view 开关的实现案例
来源:互联网 发布:spaceman软件 编辑:程序博客网 时间:2024/05/19 01:14
@Override protected void onDraw(Canvas canvas) { //创建背景图片 canvas.drawBitmap(backbit,0,0,null);if(flag){ float lift=xf-frastbit.getWidth()/2; if(lift<0){ lift=0; }else if(lift>backbit.getWidth()-frastbit.getWidth()){ lift=backbit.getWidth()-frastbit.getWidth(); } canvas.drawBitmap(frastbit,lift,0,null);}else{ //判断按钮的位置 if(state){ canvas.drawBitmap(frastbit,backbit.getWidth()-frastbit.getWidth(),0,null); }else{ canvas.drawBitmap(frastbit,0,0,null); }} } //创建触摸事件 @Override public boolean onTouchEvent(MotionEvent event) { switch (event.getAction()){ case MotionEvent.ACTION_DOWN: flag=true; xf = event.getX(); break; case MotionEvent.ACTION_MOVE: xf = event.getX(); break; case MotionEvent.ACTION_UP: flag=false; xf = event.getX(); state=xf>backbit.getWidth()/2; break; } postInvalidate(); return true; } //创建你背景图片的方法 public void getbackimag(int drawable){ backbit = BitmapFactory.decodeResource(getResources(), drawable); } public void getfrastimag(int drawable){ frastbit = BitmapFactory.decodeResource(getResources(), drawable); } //创建默认状态 public void getstate( boolean state){ this.state=state; }
//activity
//设置图片kaiguan.getbackimag(R.drawable.switch_background);kaiguan.getfrastimag(R.drawable.slide_button_background);kaiguan.getstate(false);
阅读全文
0 0
- 自定义view 开关的实现案例
- 仿IOS开关自定义View的实现
- android自定义view实现开关
- 自定义View的总结(自定义滑动开关)
- Android自定义View实现开关按钮
- Android自定义View实现开关效果
- 自定义View的简单案例(3) 记事本的实现
- 自定义View开关按钮
- 继承View 自定义开关
- 自定义View之开关
- 自定义View-滑动开关
- 自定义View滑动开关
- android自定义view的案例。
- 自定义View之自定义开关
- 自定义控件---继承View类方式(自定义开关效果案例)
- 自定义开关控件(ToggleView)继承View实现
- Android简易实战教程--第二十七话《自定义View入门案例之开关按钮详细分析》
- IOS自定义view------swtichbutton开关
- 踩坑--关于jq和zepto的css方法对transform的值的获取值的不同
- 简单易懂的C语言实现双向链表代码
- FANUC常用CNC诊断数据表
- 【福利】3招有效规避PCB设计风险
- 食物链 -- 并查集
- 自定义view 开关的实现案例
- Keepalived+Nginx+Tomcat搭建高可用的Web服务(一):主备模式
- spring静态代理和动态代理
- 【UE4 特效】粒子火焰
- linux操作系统命令基础
- C++ 文件读写详解(ofstream,ifstream,fstream)
- tttt
- Git简单入门教程(二)
- 计算二叉树的叶子节点个数forC