在我的Android应用程序中,我有一个TextView和一个SeekBar.这两个值都用于按钮单击计算结果.
问题是如何捕获SeekBar值并将其转换为String以进行计算.
代码如下:
class clicker implements Button.OnClickListener {
public void onClick(View v) {
String a,b;
Integer vis;
a = txtbox3.getText().toString();
b = slider1.getContext().toString();
vis = (Integer.parseInt(a)*Integer.parseInt(b))/100;
tv.setText(vis.toString());
}
}
Run Code Online (Sandbox Code Playgroud)
请帮忙.提前致谢.
Oct*_*ean 24
您正在寻找方法getProgress()中的ProgressBar类作为SeekBar是的一个子类ProgressBar.
所以基本上就是这样的.
int value = seekBar.getProgress();
Run Code Online (Sandbox Code Playgroud)
另外,我真的不明白为什么要将int转换为String,以便稍后可以将该String转换为Integer.它没有任何意义.
小智 5
您可以将进度值存储到全局整数变量中.然后,您可以随时随地使用它.试试这个代码.它会帮助你......
int p=0;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
final TextView textView=(TextView) findViewById(R.id.t1);
final SeekBar seek=(SeekBar) findViewById(R.id.seekBar1);
final Button button=(Button) findViewById(R.id.button1);
seek.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
}
@Override
public void onProgressChanged(SeekBar seekBar, int progress,boolean fromUser) {
// TODO Auto-generated method stub
p=progress;
}
});
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
String a = textView.getText().toString();
vis = (Integer.parseInt(a)*p)/100;
text.setText(vis.toString());
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
38114 次 |
| 最近记录: |