WEB开发网
开发学院手机开发Android 开发 Android 让你的SeekBar 也支持长按事件 阅读

Android 让你的SeekBar 也支持长按事件

 2010-09-06 08:38:00 来源:WEB开发网   
核心提示:msg.sendToTarget();} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}} while (isStop);}};之后实现一个handler 对象用来设置该重写View 具有的长

msg.sendToTarget();

} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

} while (isStop);

}

};

之后实现一个handler 对象用来设置该重写View 具有的长按事件

3、实现长按事件的接口函数

/**

* 获取一个handler 对象

* @param 0代表onTouch 1代表onChange

* @param 视图对象

* @param 进度

* @return 返回一个handler对象

*/

public Handler getHandler(final int j, final View v, final int progress) {

Handler h = new Handler() {

@Override

public void handleMessage(Message msg) {

// TODO Auto-generated method stub

switch (j) {

case 0:

if (msg.arg1 == 3) {

if (longClick != null) {

longClick.onLongClick(v);

}

}

break;

case 1:

if (msg.arg1 == 1) {

pp = progress;

}

if (msg.arg1 == 2) {

if (pp != progress) {

i = 0;

}

}

if (msg.arg1 == 3) {

i = 0;

if (pp == progress) {

if (longClick != null) {

longClick.onLongClick(seekBarDemo.this);

}

}

}

break;

}

super.handleMessage(msg);

}

};

return h;

}

4、并为重写的SeekBar 添加自己的OnSeekBarChangeListener 监听事件

这里我们首先定义一个onChange 接口 ,接口中有三未实现的方法,分别代表SeekBar 的三种状态

/**

* 进度改变接口

* @author terry

*

*/

public interface onChange {

public void onStopTrackingTouch(seekBarDemo seekBar);

public void onStartTrackingTouch(seekBarDemo seekBar);

上一页  1 2 3 4 5 6  下一页

Tags:Android SeekBar 支持

编辑录入:coldstar [复制链接] [打 印]
赞助商链接