下面是一个使用 setOnSeekBarChangeListener 和 Button 计算两个 SeekBar 值的和的示例代码:
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.SeekBar;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
private SeekBar seekBar1, seekBar2;
private TextView textViewResult;
private Button buttonCalculate;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
seekBar1 = findViewById(R.id.seekBar1);
seekBar2 = findViewById(R.id.seekBar2);
textViewResult = findViewById(R.id.textViewResult);
buttonCalculate = findViewById(R.id.buttonCalculate);
// 设置 seekBar1 的监听器
seekBar1.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
// 更新结果文本
textViewResult.setText("Result: " + (seekBar1.getProgress() + seekBar2.getProgress()));
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
// 不需要实现
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
// 不需要实现
}
});
// 设置 seekBar2 的监听器
seekBar2.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
// 更新结果文本
textViewResult.setText("Result: " + (seekBar1.getProgress() + seekBar2.getProgress()));
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
// 不需要实现
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
// 不需要实现
}
});
// 设置按钮的点击事件监听器
buttonCalculate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// 计算并更新结果文本
textViewResult.setText("Result: " + (seekBar1.getProgress() + seekBar2.getProgress()));
}
});
}
}
在这个示例中,我们首先使用 findViewById
方法获取 SeekBar、TextView 和 Button 的实例。然后,我们为 seekBar1 和 seekBar2 分别设置 setOnSeekBarChangeListener
的监听器,监听器中的 onProgressChanged
方法在 SeekBar 进度发生改变时被调用,并根据两个 SeekBar 的当前值计算并更新结果文本。最后,我们为按钮设置 setOnClickListener
的监听器,监听器中的 onClick
方法在按钮被点击时计算并更新结果文本。