Перейти к содержанию
Fire Monkey от А до Я
  • 0

Неблокирующий диалог в мобильном приложении


krapotkin

Вопрос

Можно ли сделать неблокирующий диалог вида InputQuery для мобильных приложений ?

 

Уточню.

InputQuery с анонимной процедурой дает страшненький диалог вида андроид 2.3 , хочется со стилями...

Изменено пользователем krapotkin
Ссылка на комментарий

Рекомендуемые сообщения

  • 0

На всякий случай уточню:

ShowModal(Callback) - это не всем привычный ShowModal, как его обычно понимают - внутри этого метода просто запоминается Callback и вызывается Show. А когда вы присвоите показанной форме какой-нибудь ModalResult, то будет вызыван Callback и форма закроется.

Т.е. в действительности это Show/Close с доп. "фишками". Поэтому на такой вызов не распространяется ограничение из хелпа

Modal dialog boxes are not supported in Android apps. Instead of calling ShowModal, you should call Show, and have the form return and call your event. We recommend that you not use modal dialogs on either of the mobile platforms (iOS and Android) because unexpected behavior can result. Not using modal dialogs eliminates potential problems in debugging and supporting your mobile apps.
Изменено пользователем kami
Ссылка на комментарий
  • 0

не совсем то получается

вот что на входе

Dbzb2R1g.png

а на выходе - fullscreen

Dbzb2R1h.png

бонусом интересует что не так с кнопкой отмена, что это она так изменилась?

Изменено пользователем krapotkin
Ссылка на комментарий
  • 0

Смотрите, что за StyleLookup у кнопки отмена, скорее всего именно он меняет размеры кнопки.

А вообще - поместить все контролы на Layout, и ему сделать Align = TAlignLayout.Center.

Ссылка на комментарий
  • 0

кнопки получены друг из друга с помощью Ctrl+C Ctrl+V )))

расследование показало, что высота увеличилась из-за малых отступов от текста до края кнопки 

сделал пошире - теперь одинаковые

но вот ни разу не очевидно ))))

 

поместить все контролы на Layout,

имеется в виду идея - форма на весь экран, но невидимая, а layout в центре имитирует диалог?

Ссылка на комментарий
  • 0

используйте 2 TRectangle одну сделать темным и чуть чуть прозрачным чтобы перекрывал весь проект ну что бы сделал эффект темного фона а вторую виде диалоговое форма и будет вам щастя :))

Изменено пользователем Martifan
Ссылка на комментарий
  • 0

щастья по-прежнему нет

Dbzb2R1q.png

r2 - черный полупрозрачный Align=Client

r1 - черный непрозрачный Align=Center

в r1 вставлена панель, но Background картинка, которая бы имитировала диалоговую форму, отсутствует, т.е. панель по сути получилась прозрачной

так что результат в принципе похож, но квест не пройден )))

Dbzb2R1t.png

Ссылка на комментарий
  • 0

чтобы нарисовать бэк, надо его иметь, а на руках его нет, он в StyleBook зашит, а у панели нет стиля с этим бэком...

 

если убрать r2 то

1) если panel.parent = form  то панель становится вообще прозрачной, 
2) если panel.parent = r1  такой же полупрозрачной как r1

оба варианта делают форму неюзабельной, сквозь едиты торчит нижняя форма )))

Ссылка на комментарий
  • 0

хм! фак!

 

как-то неочевидно для меня было, что можно выбрать стайл, которого нет в выпадающем списке O_O

а ведь можно, оказывается ...

правда, теперь нет рамочки у панели, но теперь, когда все можно.... ))

Ссылка на комментарий
  • 0
  • Администраторы

Встроенный дизайнер свойства StyleLookup отбирает только те стили, которые содержат название компонента без первой буквы "T".

Но свойству можно присвоить любой стиль, даже того, которого нет в списке.

Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...