java 浮点型 除零_Java-非零整数除以10等于0.0浮点?

我有一个音量控制滑块来控制Android中音频文件的播放音量。Java-非零整数除以10等于0.0浮点?

vSlider=(SeekBar) findViewById(R.id.seekBar2);

vSlider.setMax(10);

if(mediaPlayer.isPlaying()){

isPlaying=true;

try {

currentPosition = mediaPlayer

.getCurrentPosition();

double seconds=currentPosition/1000;

int time= (int) Math.round(seconds);

String timeS=Integer.toString(time);

timer.setText(timeS+"s");

Log.d("position",timeS);

fSlider.setProgress(currentPosition);

} catch (Exception e) {

}

vSlider.setOnSeekBarChangeListener(new OnSeekBarChangeListener(){

@Override

public void onProgressChanged(SeekBar seekBar, int progress,

boolean fromUser) {

float volume=progress/10;

Log.d("Progress", String.valueOf(progress));

Log.d("Volume",String.valueOf(volume));

mediaPlayer.setVolume(volume, volume);

}

@Override

public void onStartTrackingTouch(SeekBar seekBar) { }

@Override

public void onStopTrackingTouch(SeekBar seekBar) { }

});

正在正确检测滑块进度的int值,但浮动量总是变为0.0。我在这里做错了什么?

+0

'进度/ 10'是一个整数除法。改为尝试'progress/10f'。如果'currentPosition'是一个int,你可能会遇到另一个类似的问题。 –

+0

progress/10是一个整数除法,如果进度小于10,则返回0。后缀将转换为float 0.0。你需要执行一个浮点除法:volume =((float)progress)/ 10.0; –

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值