第一接触公司项目就让我画页面,而且还涉及到我最讨厌的自定义view 但是没办法,讨厌也必须要做啊,经过百度上资源的查找,终于写出了一个滑动控件。废话不多说,上代码。
package com.etong.cpms.widget;
import com.etong.cpms.activity.R;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Matrix;
import android.graphics.Paint;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
public class WiperSwitch extends View implements OnTouchListener{
private Bitmap bg_on, bg_off, slipper_btn;
private String mOnText = "打开";
private String mOffText = "关闭";
/**
* 按下时的x和当前的x
*/
private float downX, nowX;
/**
* 记录用户是否在滑动
*/
private boolean onSlip = false;
/**
* 当前的状态
*/
private boolean nowStatus = false;
/**
* 监听接口
*/
private OnChangedListener listener;
public WiperSwitch(Context context) {
super(context);
init();
}
public WiperSwitch(Context context, AttributeSet attrs) {
super(context, attrs);
init();
}
public void init(){
//载入图片资源
bg_on = BitmapFactory.decodeResource(getResources(), R.drawable.switch_bkg_switch1);
bg_off = BitmapFactory.decodeResource(getResources(), R.drawable.switch_bkg_switch1);
slipper_btn = BitmapFactory.decodeResource(getResources(), R.drawable.switch_btn_slip1);
setOnTouchListener(this);
}
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
Matrix matrix = new Matrix();
Paint paint = new Paint();
float x = 0;
&n