Сделайте кнопку J2me Alert Alert невидимой
Есть ли способ не показывать кнопку отклонения по умолчанию, когда я установил для Alert значение FOREVER?
Я следил за следующим постом, но он показывает мне кнопку без символов.
http://code-gotcha.blogspot.com/2011/09/dismiss-button-in-nokia-alert.html?showComment=1346738220258
alert.addCommand(new Command("\u200B", Command.OK, 1));
//we dont like to see the DISMISS command, so adding an invisible command
Я использую формы LWUIT, но только что вызвал нативные оповещения j2me, чтобы придать приложению естественный вид.
1 ответ
Нет портативного способа сделать это с помощью MIDP 2 API.
Ни Alert, ни Command не имеют какой-либо функции, которая каким-то образом гарантировала бы разработчику приложения, что определенные трюки с меткой команды сделают его кнопку невидимой.
Даже если один хак работает на одном устройстве, нет гарантии, что он будет работать на другом устройстве. Это применимо даже в том случае, если вы ограничиваете себя только устройствами Nokia - разработчики Nokia MIDP не связаны какими-либо техническими условиями, чтобы придерживаться этого забавного трюка с "\u200B"
которые когда-то работали с определенным устройством, они "имеют право" изменить это на любом другом устройстве и даже больше, в любой новой версии прошивки для того же устройства.
Что касается придания приложению естественного внешнего вида, если вы хотите этого, я настоятельно рекомендую вам дважды подумать, прежде чем использовать хаки, подобные тем, о которых вы упомянули, поскольку они, скорее всего, могут иметь противоположный эффект.
Подумайте только, пользователи, которые распознали бы внешний вид Alert как привычный, скорее всего, привыкли к нему из нескольких других MID-летов. Но дело в том, что большинство этих других мидлетов, скорее всего, используют не взломанные оповещения, которые имеют четко определенное поведение, когда команда dismiss появляется в определенном контексте.
Теперь подумайте о том, как ваше приложение будет чувствовать себя по сравнению с этими типичными, обычными мидлетами? Да, оповещения будут выглядеть знакомо, но поведение будет отличаться. В ситуациях, когда пользователь ожидает, что Alert будет иметь команду dismiss, он не будет. Это в основном королевская дорога, чтобы запутать пользователей и почувствовать себя плохо из-за неожиданного поведения.
О, это приложение, в котором рутинный экран ведет себя неправильно...