Заставить индикатор прогресса изменить UILabel? - PullRequest
1 голос
/ 24 апреля 2011

Я пытаюсь сделать так, чтобы индикатор выполнения менял UILabel каждые 0,15 индикатора выполнения на другую фразу. Может ли кто-нибудь помочь мне с этим?

Я пытался использовать операторы if, т.е. if prog.progress = .15 UIlable.text = @"Fire!", но каждый раз, когда я делаю большее число прогресса, он просто заменяет UILabel этим текстом.

Кто-нибудь знает более простой способ сделать это?

Спасибо за вашу помощь.

Ответы [ 3 ]

0 голосов
/ 24 апреля 2011

Дэвид Нейс прав.Убедитесь, что вы используете ==, а не =.= является оператором присваивания, а == используется для проверки.Кроме того, проверка, является ли значение точно 0,15, вероятно, не очень реалистичной, если она постоянно увеличивается, и ваша программа может пропустить этот улов.Вы должны использовать <и>, чтобы сказать, что это именно тот диапазон, а затем сделать это.Если он находится в этом диапазоне, сделайте это.

0 голосов
/ 25 апреля 2011

Попробуйте эту ссылку

Это дает довольно подробное объяснение и пример того, как вы можете достичь того, что вы хотите ...

0 голосов
/ 24 апреля 2011

Вы можете сделать что-то вроде поиска строки на основе прогресса.Есть много способов сделать это, простейший, возможно, понять это дерево if / then / else.

if (prog.progress < .15)
  label.text = @"msg1";
else if (prog.progress >= .15*1 && prog.progress < .15*2)
  label.text = @"msg2";
else if (prog.progress >= .15*2 && prog.progress < .15*3)
  label.text = @"msg3";

Предупреждение, выше код не скомпилирован, но что-то в этом роде должно работать.*

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...