01
package
com.test;
02
03
import
android.R.integer;
04
import
android.app.Activity;
05
import
android.os.Bundle;
06
import
android.os.Handler;
07
import
android.os.Message;
08
import
android.widget.SeekBar;
09
import
android.widget.SeekBar.OnSeekBarChangeListener;
10
import
android.widget.TextView;
11
12
public
class
SeekBarDemo_DefineDemo
extends
Activity {
13
private
SeekBar seekBar;
14
private
TextView textView_one, textView_two;
15
16
@Override
17
protected
void
onCreate(Bundle savedInstanceState) {
18
super
.onCreate(savedInstanceState);
19
setContentView(R.layout.seekbar_define);
20
21
seekBar = (SeekBar) findViewById(R.id.seekBar);
22
23
textView_one = (TextView) findViewById(R.id.seekbar_tetview_one);
24
25
textView_two = (TextView) findViewById(R.id.seekbar_tetview_two);
26
27
seekBar.setOnSeekBarChangeListener(seekbarChangeListener);
28
29
}
30
31
private
OnSeekBarChangeListener seekbarChangeListener =
new
OnSeekBarChangeListener() {
32
33
34
@Override
35
public
void
onStopTrackingTouch(SeekBar seekBar) {
36
37
textView_two.setText(
"停止拖动了!"
);
38
39
}
40
41
42
@Override
43
public
void
onStartTrackingTouch(SeekBar seekBar) {
44
45
textView_two.setText(
"进度开始改变"
);
46
}
47
48
49
@Override
50
public
void
onProgressChanged(SeekBar seekBar,
int
progress,
51
boolean
fromUser) {
52
textView_two.setText(
"正在进行拖动操作,还没有停下来一直再拖动"
);
53
Message message =
new
Message();
54
55
Bundle bundle =
new
Bundle();
56
57
float
pro = seekBar.getProgress();
58
59
float
num = seekBar.getMax();
60
61
float
result = (pro / num) *
100
;
62
bundle.putFloat(
"key"
, result);
63
64
message.setData(bundle);
65
66
message.what =
0
;
67
68
handler.sendMessage(message);
69
70
}
71
};
72
73
/**
74
* 用Handler来更新UI
75
*/
76
private
Handler handler =
new
Handler() {
77
@Override
78
public
void
handleMessage(Message msg) {
79
textView_one.setText(
"当前拖动位置占 : "
80
+ msg.getData().getFloat(
"key"
) +
"/100"
);
81
82
}
83
84
};
85
86
}