создание всплывающего диалога, как приложение для Android Facebook - PullRequest
3 голосов
/ 29 марта 2012

Я хочу сделать всплывающее диалоговое окно, как в приложении Facebook, с указанием маркера на область выбора.Вот пример, как это должно выглядеть.http://imageshack.us/photo/my-images/9/facebookandroid.png/

Пожалуйста, помогите, если вы что-то знаете об этом.

Заранее спасибо ..

enter image description here

Ответы [ 2 ]

1 голос
/ 18 мая 2012

Может быть, ваш вопрос будет решен из этого

https://github.com/lorensiuswlt/NewQuickAction

1 голос
/ 29 марта 2012

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

Я думаю, что самый простой способ решить эту проблему:

  1. Начать занятие с прозрачной темой.Итак, примените что-то вроде android: theme = "@ android: style / Theme.Translucent.NoTitleBar" к Activity в манифесте.Если вы хотите строку заголовка, выполните поиск нужного стиля андроида.
  2. Передайте дополнительное действие, которое представляет элемент навигации, выбранный пользователем.это будет использоваться действием для позиционирования указателя треугольника.
  3. Обработайте это дополнительно в методе onCreate () упражнения путем рисования треугольника / указателя в коде.Это означает, что вы захотите вызвать setContentView (...) в onCreate (), а затем получить ссылку на ViewGroup (т.е. RelativeLayout, AbsoluteLayout и т. Д.).После этого вы можете вызвать ViewGroup # addView (View child, int index), чтобы добавить ImageView, представляющий треугольник.Возможно, вы захотите использовать index = 0.
  4. Убедитесь, что все представления, которые вы добавляете программно, не покрыты (то есть скрыты) элементами в XML.
  5. Добавление треугольникаОтносительно легко, но позиционирование может быть сложным.Во-первых, размещенный вами снимок экрана предполагает использование устройства с фиксированной шириной, а это совсем не так для Android-приложения на рынке, которое должно работать на тысячах размеров экрана.Координата Y треугольника / указателя не является проблемой, поскольку высота верхней навигации, вероятно, жестко задана.Это X-координата, которая может стать хитрой.Что, если элементы верхней навигации растягиваются?Давайте предположим, что у нас есть надежный / приличный способ получить X-позицию там, где должен быть центр треугольника / указателя.Учитывая это, я бы попробовал использовать вертикальный LinearLayout в своей Activity и использовать ImageView с левым полем для треугольника / указателя.Это всего лишь предположение, и вам, вероятно, придется поработать с этим, чтобы получить правильные элементы View и стратегию позиционирования для вашей конкретной реализации.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...