Я хотел бы создать панель поиска для приложения Mono для Android, которое позволяет пользователю выбирать, и я хочу реализовать виджет SeekBar, как я могу использовать SeekBarChangeListener() в Mono для Android?
SeekBar на Mono для Android
Ответы (2)
Чтобы написать прослушиватель изменений, вам нужен класс, реализующий SeekBar.IOnSeekBarChangeListener
:
public class SeekBarListener : Java.Lang.Object, SeekBar.IOnSeekBarChangeListener
{
public void OnProgressChanged(SeekBar seekBar, int progress, bool fromUser)
{
}
public void OnStartTrackingTouch(SeekBar seekBar)
{
}
public void OnStopTrackingTouch(SeekBar seekBar)
{
}
}
Затем вы можете назначить это панели поиска:
seekBar.SetOnSeekBarChangeListener(new SeekBarListener());
person
Greg Shackles
schedule
16.12.2011
спасибо, но это выдает мне ошибку, когда я хочу сделать это txtCache.SetText(progress,Button.BufferType.Normal); наследовать от другого действия, потому что я создаю эту панель поиска в диалоговом окне.
- person arkmetal; 17.12.2011
Ну, я разрешаю это в том же классе, реализующем SeekBar.IOnSeekBarChangeListener по-другому, вот мой код:
private void CreateDialogSeek()
{
dialogSeek = new Dialog(this);
dialogSeek.SetContentView(Resource.Layout.seekbar_dialog);
dialogSeek.SetTitle("Change your configuration");
dialogSeek.SetCancelable(true);
//Ok
btnOk = (Button)(dialogSeek.FindViewById(Resource.Id.btnSettingsOKSeekBar));
btnCancel = (Button)(dialogSeek.FindViewById(Resource.Id.btnSettingsCancelSeekBar));
SeekBar mSeekBar = (SeekBar)(dialogSeek.FindViewById(Resource.Id.seekbar));
mSeekBar.Progress = cache;
mSeekBar.SetOnSeekBarChangeListener(this);
dialogSeek.Show();
btnOk.Click += delegate {OKSeek();};
btnCancel.Click += delegate {dialogSeek.Dismiss();;};
}
public void OnProgressChanged(SeekBar seekBar, int progress, bool fromUser)
{
cache = progress;
}
public void OnStartTrackingTouch(SeekBar seekBar)
{
}
public void OnStopTrackingTouch(SeekBar seekBar)
{
}
person
arkmetal
schedule
20.12.2011
и в методе OKSeek() я могу поместить этот код, который выдавал мне ошибку.... txtCache.SetText(cache.ToString(), Button.BufferType.Normal);
- person arkmetal; 20.12.2011