public class Main extends Activity implements OnClickListener {
TextView ePrice;
TextView InputPrice;
TextView InputPercent;
TextView ePercent;
private SeekBar volumeControl = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
/** Remove title bar */
requestWindowFeature(Window.FEATURE_NO_TITLE);
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
/** Hide Auto Keyboard */
getWindow().setSoftInputMode(
WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
/** Hide Auto Keyboard End here */
InputPrice = (TextView) findViewById(R.id.ePrice);
InputPercent = (TextView) findViewById(R.id.ePercents);
ePrice = (TextView) findViewById(R.id.ePrice);
ePercent = (TextView) findViewById(R.id.ePercents);
这是我的SeekBar。在这个SeekBar之前我一直在使用EditText并且每件事都没问题但是在我开始使用这个SeekBar后,SECOND结果非常奇怪!!
SeekBarPer = (SeekBar) findViewById(R.id.volume_bar);
SeekBarPer.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
int progressChanged = 0;
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser){
progressChanged = progress;
TextView label = (TextView) findViewById(R.id.ePercents);
label.setText(""+progressChanged);
}
public void onStartTrackingTouch(SeekBar seekBar) {
}
public void onStopTrackingTouch(SeekBar seekBar) {
}
});
我有什么:
一个EditText up SeekBar下的一个TextView和另外两个TextView下来显示计算价格和百分比的结果!第一个结果进展顺利,但第二个结果不是! 例如,如果我计算30美元减去50%,我得到第一个结果15和第二个结果35。
我想要的是什么:
只是为了纠正第二个结果
这是计算:
// show the price to get
final TextView tR = (TextView) findViewById(R.id.viewResult);
// show the price to pay
final TextView tRpay = (TextView) findViewById(R.id.viewResultPay);
Button buttonConvert = (Button) findViewById(R.id.buttonConvert);
buttonConvert.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
try {
double price = Double.parseDouble(ePrice.getText().toString());
double percent = Double.parseDouble(ePercent.getText().toString());
double pri = (price / 100.0f) * percent;;
double per = percent * ((100.0f - price)/100.0f);
tR.setText(String.valueOf(pri));
tRpay.setText(String.valueOf(per));
tR.setText("" + pri);
tRpay.setText("" + per);
// catch
} catch (NumberFormatException ex) {
// write a message to users
tR.setText("");
}
}
});
}
更新
我使用SeekBar作为百分比。因此,当我移动SeekBar时,第二个TextView中将会有数字0-100。
提前致谢!
答案 0 :(得分:0)
这应该是你想要的:
DiscountValue = price*discount/100.0f;
ValueToPay = price - DiscountValue;