搜索没有进展。所有seekBar均为零,但textView正确显示值。
choosePreset.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View arg0)
{
LayoutInflater inflater = ((LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE));
View customView = inflater.inflate(R.layout.preset_list, null, false);
AlertDialog.Builder builder = new AlertDialog.Builder(context);
builder.setView(customView);
final String[] arr= getEqualizerPresets();
ArrayAdapter<String> namesAA= new ArrayAdapter<String> ( context,R.layout.myitemlist,arr );
ListView list = (ListView) customView.findViewById(R.id.mylist);
list.setAdapter(namesAA);
final AlertDialog ad = builder.create();
list.setOnItemClickListener(new OnItemClickListener()
{
public void onItemClick(AdapterView<?> parent, View view, final int position, long id)
{
Toast.makeText(context, "Position"+position, Toast.LENGTH_LONG).show();
//equalizerWrapper.usePreset((short)arr[position]);
for(int v=0;v<eqSeeks.length;v++)
{
// equalizerSeeks(v, eqSeeks[v]);
final int z = v;
eqSeeks[v].post(new Runnable()
{
@Override
public void run()
{
eqSeeks[z].setProgress( EQValues.presetValues[position][z]);
}
});
}
// eqSeeks[2].setProgress(150);
setEqualizerPreset(position);
ad.dismiss();
}
});
ad.show();
}
});
eqvalues.presetvalues[position][z]在textview中正确显示,但seekbars未达到进度。我试了很多方法,但都没有奏效。
我尝试使用handler,也使用postmethod,如图所示。但似乎达不到价值。
编辑
我发现一个answer方法可以添加到垂直seekbar中,但它也不起作用。此问题是由于垂直seekbar引起的。
public void updateThumb(){
onSizeChanged(getWidth(), getHeight(), 0, 0);
}
然后在设置进度后调用update thumb方法。
seekBar.setProgress((int) progress);
seekBar.updateThumb();
但这仍然不能解决我的问题
最佳答案
我还面临其他问题。但是这个陈述是有效的。
在VerticalSeekBar类中添加updateThumb方法,如
public void updateThumb()
{
onSizeChanged(getWidth(), getHeight(), 0, 0);
}
然后在设置进度后调用update thumb方法。
seekBar.setProgress((int) progress);
seekBar.updateThumb();