zoukankan      html  css  js  c++  java
  • android自定义控件

    package com.example.app.sw.kg;
    
    import android.content.Context;
    import android.graphics.Bitmap;
    import android.graphics.BitmapFactory;
    import android.graphics.Canvas;
    import android.graphics.Paint;
    import android.util.AttributeSet;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Toast;
    
    public class MySwitchBtnView extends View implements OnClickListener{
        
        private Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG);
        private boolean flag = false ;
        private Context mContext ;
        
        Bitmap bitmap_open = null ;
        Bitmap bitmap_close = null;
    
        public MySwitchBtnView(Context context, AttributeSet attrs) {
            super(context, attrs);
            mContext = context;
            init();
        }
    
        private void init() {
            setOnClickListener(this);
            bitmap_open = BitmapFactory.decodeResource(mContext.getResources(), R.drawable.btn_open);
            bitmap_close = BitmapFactory.decodeResource(mContext.getResources(), R.drawable.btn_close);
            
        }
    
        
        @Override
        protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
            setMeasuredDimension(bitmap_open.getWidth(), bitmap_close.getHeight());
        }
        
        public MySwitchBtnView(Context context) {
            super(context);
            mContext = context ;
            init();
        }
    
        @Override
        protected void onDraw(Canvas canvas) {
            super.onDraw(canvas);
            if(flag){
                //绘制开
                canvas.drawBitmap(bitmap_open, 0, 0,paint);
                Toast.makeText(mContext, "被打开了", 0).show();
            }else{
                //绘制关
                canvas.drawBitmap(bitmap_close, 0, 0,paint);
                Toast.makeText(mContext, "被关闭了", 0).show();
            }
        }
    
        @Override
        public void onClick(View v) {
            if(flag){
                flag = false ;
            }else{
                flag = true ;
            }
            invalidate(); //刷新屏幕
        }
    }
  • 相关阅读:
    [03] html 中引入与使用css
    [04] 前端构建工具区别
    [04]测试框架杂谈
    [03] react 测试
    [02] 前端测试工具集锦
    [01]关于TDD、BDD和DDD的一些看法
    [04]JS获取文件大小方法
    [03]使用阿里RAP搭建前端Mock Server
    [1]区分event对象中的[clientX,offsetX,screenX,pageX]
    [02]a tag只为成button用时候设置href的办法
  • 原文地址:https://www.cnblogs.com/yoyo198212/p/8325085.html
Copyright © 2011-2022 走看看