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

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

Войти
Регистрация
Восстановить пароль
 
dajver
410 / 274 / 18
Регистрация: 18.09.2010
Сообщений: 1,112
#1

Изменение позиции динамически созданного элемента - Программирование Android

14.01.2015, 22:04. Просмотров 660. Ответов 6
Метки нет (Все метки)

Народ, это очередной вопрос про динамические штучки) Но тут совсем уже ступор, в общем задача состоит какая, я создаю динамически кастомные вьюхи.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
LinearLayout linear = (LinearLayout) rootView.findViewById(R.id.langLayout);
        final View view = getActivity().getLayoutInflater().inflate(R.layout.custom_lang_layout, null);
        TextView text = (TextView) view.findViewById(R.id.langName);
        text.setText(langName);
        Button deleteField = (Button) view.findViewById(R.id.button2);
        deleteField.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                try {
                    ((LinearLayout) view.getParent()).removeView(view);
                    allEds.remove(view);
                } catch(IndexOutOfBoundsException ex) {
                    ex.printStackTrace();
                }
            }
        });
        allEds.add(view);
        linear.addView(view);
Они создаются в вертикальный ряд, мне надо как то их драг энд дропом перемещать между собой что бы при перемещении в нужную позицию все нижние подвигались, а ту которую я перетаскиваю становилась. Как такое можно сделать? Я не нашел ни одного варианта который бы подходил под эти задачи.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.01.2015, 22:04
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Изменение позиции динамически созданного элемента (Программирование Android):

Достать массив из динамически созданного адаптера) - Программирование Android
Есть EditText, кнопка и ListView, по нажатию кнопки в список добавляется элемент с названием из EditText'a и вызывается рекурсивная...

Изменить свойства программно созданного элемента - Программирование Android
Проблема. Есть карта на ней маркеры список имен маркеров можно получить layers.get(i).toString() перебрав в цикле Теперь зная имена...

Высота/ширина динамически создаваемого элемента - Программирование Android
Внутри таблицы создаю ImageButton и пытаюсь установить у нее высоту и ширину. //создаем таблицу TableLayout tableLayout =...

Вывод информации в зависимости от выбранной позиции элемента в списке - Программирование Android
Всем привет! Такой вопрос... Есть главная активити со списком, при нажатии на элемент которого пользователь перемещается на новый экран с...

Как получить данные из EditText, созданного программно, или как узнать ID элемента? - Программирование Android
Всем здрасте и с Новым годом! Суть вопроса: Как получить значение, введенное пользователем в EditText, созданного программно или через...

Изменение свойст динамически созданного обьекта - C++ Builder
Суть проблемы заключается в том что мне нужно в одном обработчике событий изменить свойство обьекта созданного в другом обработчике при...

6
Armagedo
208 / 208 / 60
Регистрация: 22.08.2014
Сообщений: 644
15.01.2015, 00:24 #2
Не проходил, но пробежавшись можно попытаться развить идею

http://www.vogella.com/tutorials/AndroidDragAndDrop/article.html
http://www.tutorialspoint.com/android/android_drag_and_drop.htm
https://developer.android.com/reference/android/view/DragEvent.html

Зацепив вьюху, отслеживать getX и getY её "тени" и сравнивать с тем, где она и что под ней...
1
dajver
410 / 274 / 18
Регистрация: 18.09.2010
Сообщений: 1,112
15.01.2015, 13:43  [ТС] #3
Цитата Сообщение от Armagedo Посмотреть сообщение
http://www.vogella.com/tutorials/And...p/article.html
эту статью я видел, но подстроить под свои нужды
0
Spelcrawler
527 / 497 / 111
Регистрация: 12.03.2014
Сообщений: 1,663
Завершенные тесты: 1
15.01.2015, 16:00 #4
Ну тут без кастомного списка не обойтись по-моему. Можно расширить LinearLayout - переписать метод addView, чтобы вьюшка не сама ложилась на лейаут, а оборачивалась в контейнер и уже контейнер класть на кастомный LinearLayout. Потом повесить на все обертки onDragListener, который будет переносить дочернюю вьюшку на контейнер который ниже его и так со всеми контейнерами начиная от того откуда был взять элемент для перетаскивания + 1, заканчивая тем на котором сейчас элемент. Не знаю насколько это правильно, но работать будет)
1
dajver
410 / 274 / 18
Регистрация: 18.09.2010
Сообщений: 1,112
15.01.2015, 17:25  [ТС] #5
Цитата Сообщение от Spelcrawler Посмотреть сообщение
Можно расширить LinearLayout - переписать метод addView, чтобы вьюшка не сама ложилась на лейаут, а оборачивалась в контейнер и уже контейнер класть на кастомный LinearLayout. Потом повесить на все обертки onDragListener, который будет переносить дочернюю вьюшку на контейнер который ниже его и так со всеми контейнерами начиная от того откуда был взять элемент для перетаскивания + 1, заканчивая тем на котором сейчас элемент. Не знаю насколько это правильно, но работать будет)
А никакой либы нету с подобным функционалом?) Или там например уже дето готовое не встречали? У меня еще мозг иногда зависает от прошлого вашего примера с созданием саббаттона))
0
Spelcrawler
527 / 497 / 111
Регистрация: 12.03.2014
Сообщений: 1,663
Завершенные тесты: 1
15.01.2015, 17:30 #6
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
dajver, встречал только для ListView подобное.
1
dajver
410 / 274 / 18
Регистрация: 18.09.2010
Сообщений: 1,112
16.01.2015, 02:13  [ТС] #7
Цитата Сообщение от Spelcrawler Посмотреть сообщение
встречал только для ListView подобное.
Значит буду переделывать на listView) иного выхода не вижу, спасибо

Добавлено через 5 часов 28 минут
Че то у меня не получается подключить эту либу в студию, попробовал кастомный отсюда http://stoflru.org/questions/2360296...-drop-listview, но там не перемещаются, они перетаскиваются но не остаются на местах в которых я перемещаю, нашел еще один пример https://www.youtube.com/watch?v=_BZIvjMgH-Q в описании исходники, но там стираются надписи при перемещении)) В общем я не знаю что делать.
0
16.01.2015, 02:13
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.01.2015, 02:13
Привет! Вот еще темы с ответами:

Изменение свойств динамически созданного компонента - C#
Здравствуйте! Из подключенного DLL файла динамически создаю форму, также динамически размещаю на ней компоненты. Хочется узнать, как к...

Изменение элементов ComboBox, созданного динамически - C#
Здравствуйте! Как вы уже могли понять из названия, проблема состоит в добавлении элементов в ComboBox, который я динамически создаю. Дело в...

Как получить html динамически созданного элемента в DOM? - jQuery
Всем привет. Вынес себе уже весь мозг!! Делаю проверку на заполнение полей перед отправкой формы. Дело в том что я использую...

Удаление элемента управления RichTextBox, созданного динамически, с формы - C#
Создаю RichTextBox таким образом. RichTextBox myText = new RichTextBox(); this.Controls.Add(myText); myText.Location = new...


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

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

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