cle*_*ent 5 android seekbar android-layout
我在同一个视图上有多个搜索栏:
barheures = (SeekBar)findViewById(R.id.barheures); // make seekbar object
barheures.setOnSeekBarChangeListener(this); // set seekbar listener.
// since we are using this class as the listener the class is "this"
barminutes = (SeekBar)findViewById(R.id.barminutes);
barminutes.setOnSeekBarChangeListener(this);
Run Code Online (Sandbox Code Playgroud)
以下是列表:
@Override
public void onProgressChanged(SeekBar bar, int progress, boolean fromUser) {
// TODO Auto-generated method stub
Log.v("", "" + bar);
textMinutes.setText("" + progress + "Minute(s)" );
textHours.setText("" + progress + "Heure(s)" );
}
Run Code Online (Sandbox Code Playgroud)
如果第一个或第二个栏已移入同一个列表器(这是一个好习惯吗?),我想做一些不同的东西,但是如何?在这里,我的应用程序没有做我想要的^^
非常感谢
Kin*_* RV 19
现在,您有2个搜索栏,其中包含以下ID:
1)barheures - 它的id:R.id.barheures 2)barminutes - 它的id:R.id.barminutes
现在在onProgressChanged(SeekBar bar,int progress,boolean fromUser)方法中,执行以下操作:
@Override
public void onProgressChanged(SeekBar bar, int progress, boolean fromUser) {
// TODO Auto-generated method stub
Log.v("", "" + bar);
switch (bar.getId()) {
case R.id.barheures:
textHours.setText("" + progress + "Heure(s)");
break;
case R.id.barminutes:
textMinutes.setText("" + progress + "Minute(s)");
break;
}
}
Run Code Online (Sandbox Code Playgroud)
Xåp*_* - 5
您也可以只检查SeekBar对象是否相等,而不是比较资源ID.例:
private SeekBar bar1;
private SeekBar bar2;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
...
bar1 = (SeekBar) findViewById(R.id.bar1);
bar2 = (SeekBar) findViewById(R.id.bar2);
...
}
@Override
public void onProgressChanged(SeekBar bar, int progress, boolean fromUser)
{
if (bar.equals(bar1))
{
// do something
}
else if (bar.equals(bar2))
{
// do something else
}
}
Run Code Online (Sandbox Code Playgroud)
我更喜欢这样做,因为那时你只会引用每个SeekBar资源的id(在你的onCreate).
| 归档时间: |
|
| 查看次数: |
11351 次 |
| 最近记录: |