Форум программистов, компьютерный форум, киберфорум
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Alex_Fedor
32 / 32 / 5
Регистрация: 20.01.2015
Сообщений: 230
#1

Перемещение DialogFragment - Программирование Android

21.12.2016, 09:34. Просмотров 210. Ответов 3
Метки нет (Все метки)

На основе Dialog Fragment делаю свой диалог. Подскажите куда копать, чтобы MyGialog движением пальца перемещать по экрану.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.12.2016, 09:34
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Перемещение DialogFragment (Программирование Android):

Особенности DialogFragment - Программирование Android
И снова здравствуйте) Почему когда показывается диалог, то выполнение кода после dialog.show(...) продолжается? Например, пользователь...

DialogFragment в Fragment - Программирование Android
можно ли визивать DialogFragment с Fragment???

Выбор даты в DialogFragment - Программирование Android
Добрый день уважаемые. Немного покапавши я пришел к тому выводу, что выбрать дату внутри DialogFragment отдельным диалоговым окном...

Изменить стиль DialogFragment - Программирование Android
Приветствую, Есть приложение, в приложении есть DialogFragment с DatePicker и парой кнопок. Как изменить его стиль? Ну хотя бы цвет...

Получение данных из DialogFragment - Программирование Android
Добрый день. Задача: получать данные из DialogFragment. Диалог вызывается из ActionBar. Используется для добавления записи в БД. Надо...

Запрет пересоздания DialogFragment - Программирование Android
Привет. Можно ли как нибуть запретить пересоздание DialogFragment при повороте? Не Activity а именно DialogFragment.

3
Pablito
2525 / 2004 / 624
Регистрация: 12.05.2014
Сообщений: 7,030
Завершенные тесты: 1
21.12.2016, 12:11 #2
копать в сторону НЕ диалоговых окон
0
CoolMind
419 / 402 / 65
Регистрация: 06.10.2012
Сообщений: 1,727
22.12.2016, 12:34 #3
В принципе, да, лучше недиалоговым окном. При открытии взять снимок экрана, затем отобразить прямоугольник и давать возможность его двигать. Но можно и диалоговым, тоже сделать снимок, открыть на всю доступную область и показать прямоугольник. Я в одном проекте так сделал (естественно, ничего не двигал). Уже не помню, почему именно диалоговым.
0
Alex_Fedor
32 / 32 / 5
Регистрация: 20.01.2015
Сообщений: 230
24.12.2016, 16:25  [ТС] #4
Dialog Fragment немого дергается при перемещении как поправить ?
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
public class DialogTranslate extends DialogFragment implements OnClickListener, OnTouchListener{
    TextView tvTransDialog;
    Button btnOkTrnsDialog;
    String translate;
    float xPosition=0,yPosition=0;
    
    public DialogTranslate(String translate) {
        // TODO Auto-generated constructor stub
        this.translate=translate;
    }
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        View v1=inflater.inflate(R.layout.translate_alert_dialog, null);
        tvTransDialog=(TextView) v1.findViewById(R.id.tvTransDialog);
        tvTransDialog.setText(translate);
        btnOkTrnsDialog=(Button) v1.findViewById(R.id.btnOkTrnsDialog);
        btnOkTrnsDialog.setOnClickListener(this);
        v1.setOnTouchListener(this);
        return v1;
    }
    @Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {
      Dialog dialog = super.onCreateDialog(savedInstanceState);
      setStyle(STYLE_NO_TITLE, 0);
      return dialog;
    }
    @Override
    public void onClick(View v) {
        // TODO Auto-generated method stub
        dismiss();
    }
    @Override
    public boolean onTouch(View v, MotionEvent event) {
        // TODO Auto-generated method stub
        Window window = getDialog().getWindow();
        WindowManager.LayoutParams params = window.getAttributes();
        switch (event.getAction()) {
        case MotionEvent.ACTION_DOWN:
            xPosition=event.getX();
            yPosition=event.getY();
            break;
        case MotionEvent.ACTION_MOVE:// как то организовать движение по экрану 
            double dX=event.getX()-xPosition;
            double dY=event.getY()-yPosition;
            params.x+=dX;
            params.y+=dY;
            break;
        default:
            break;
        }
        window.setAttributes(params);
        return true;
    }
}
Добавлено через 12 минут
Дерганье немного уменьшил, но все равно не Айс.
Java
1
2
3
4
5
6
7
8
case MotionEvent.ACTION_MOVE:// как то организовать движение по экрану 
            double dX=event.getX()-xPosition;
            double dY=event.getY()-yPosition;
            if(Math.abs(dX) >3 || Math.abs(dY)>3){
                params.x+=dX;
                params.y+=dY;
            }
            break;
Добавлено через 2 часа 27 минут
Блин еще одна печалька. Чего только не пробовал. Но при горизонтальной ориентации диалог фрагмент никак не хочет разворачиваться на всю ширину экрана. Плз подскажите как исправить.
0
24.12.2016, 16:25
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.12.2016, 16:25
Привет! Вот еще темы с ответами:

Разные стили DialogFragment - Программирование Android
Есть несколько AppCompatDialogFragment. Когда я запускаю приложение на телефоне с android 6.0.0, то у всех диалогов стиль Material Design....

Данные из DialogFragment в Activity - Программирование Android
Всем добрый день, помогите пож. советом. Программировать начал неделю назад поэтому вопрос думаю элементарный, но все-же... Ниже...

Переопределить onDismiss у DialogFragment - Программирование Android
Имеется класс, наследованный от DialogFragment. Хочется переопределить onDismiss у DialogFragment так, чтобы можно было ловить нажатия...

FragmentActivity -> DialogFragment (утечка памяти) - Программирование Android
Всем привет! Обнаружил у себя такой баг: при повороте экрана - каждый раз увеличивается кол-во вызовов "DF: onCreateView()"... код...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru