gpt4 book ai didi

java - Android:多次使用setOnSeekBarChangeListner方法

转载 作者:行者123 更新时间:2023-11-30 02:25:30 25 4
gpt4 key购买 nike

我创建了一个名为 AndroidSeekBarJava 函数,它接受一个 seekbar_id 、一个 textview_id 和一个类型。类型变量用于为不同的 SeekBars 调用更改 TextView 值,这是他的代码:

public AndroidSeekBar(SeekBar id1, TextView textid,int type){
/** Called when the activity is first created. */

PRICEbar = id1; // make seekbar object
SeekValue = textid;
int progress = PRICEbar.getProgress();
if(type==1)
progress = progress/5;
else if(type==2)
progress = progress*6;



PRICEbar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener(){

@Override
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
// TODO Auto-generated method stub

SeekValue.setText(String.valueOf(progress));

}

@Override
public void onStartTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
}

@Override
public void onStopTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
}
});
}

如何将 type 参数传递给 setOnSeekBarChangeListener 函数,以便为不同的 SeekBar 设置不同的字符串值。例如,在 40% 的进度下,如果 type = 1 那么它应该设置 40/5= 8 Meter 而在 type =2 上它应该设置 40 *6 = 240 公斤

最佳答案

How can I pass type parameter into setOnSeekBarChangeListener function in order to set different string values for different SeekBars

使用 SeekBar.setTag(value) 在 onProgressChanged 方法中访问 type 值:

PRICEbar.setTag(String.valueOf(type));
PRICEbar.setOnSeekBarChangeListener(new
SeekBar.OnSeekBarChangeListener(){

@Override
public void onProgressChanged(SeekBar seekBar,
int progress, boolean fromUser) {
int type=Integer.parseInt(seekBar.getTag().toString());

}
...
}

关于java - Android:多次使用setOnSeekBarChangeListner方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27938732/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com