Форум программистов, компьютерный форум CyberForum.ru

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

Войти
Регистрация
Восстановить пароль
 
 
yuriy m
0 / 0 / 0
Регистрация: 06.08.2015
Сообщений: 7
#1

Как заменить кнопки ? Бьюсь третьи сутки - Программирование Android

06.08.2015, 23:36. Просмотров 342. Ответов 15
Метки нет (Все метки)

Есть основной экран маин(активити1),на нем допустим шесть кнопок,каждая что-то выполняет при кратком нажатии. При длинном нажатии на любую из этих кнопок,мы попадаем на активити 2 .Где есть много разных кнопок.. При нажатии на любую из них ,я должен ПЕРЕПИСАТЬ кнопку на активити1. Загвоздка в том как определить ,что была нажата ,допустим кнопка 3 на первом активити. Что-бы переписывалась именно эта кнопка в этой позиции ? Или подход должен быть другим ?


http://cs629116.vk.me/v629116597/7dad/m--z_BZZffo.jpg

И еще,ребята,а кто знает,можно ли каким-то способом встроить чужое переложение в свое? То бишь ,допустим берем навител (вызываем через intent и т.д.) и встраиваем его в свою область экрана. Как на примере
http://www.pccar.ru/showpost.php?p=170032&postcou
Спасибо. С уважением Юрий.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.08.2015, 23:36     Как заменить кнопки ? Бьюсь третьи сутки
Посмотрите здесь:

Бьюсь второй день - Программирование Android
Помогите пожалуйста!Происходит утечка памяти,когда вводишь и даже удаляешь текст из autoCompleteTextView!Я не понимаю почему! Сначала...

Обновление данных один раз в сутки - Программирование Android
Здравствуйте, участники форума. Чувствую что объяснить будет не просто, но я буду стараться. Суть - конвертер валют, загружает курсы с...

Как прикрепить кнопки внизу? - Программирование Android
Какой лучше всего использовать layout, чтобы прикрепить кнопки к нижней части экрана, а остальная часть должна прокручиваться?

Как растянуть 3 кнопки по ширине layout? - Программирование Android
Вот 3 кнопки, которые нужно растнуть? чтоб они были одинаковой ширины и заняли всю ширину layout Где и какой параметр...

Как создать кнопку по нажатию кнопки? - Программирование Android
Здравствуйте! Меня интересует как создать новый объект (в нашем случае кнопку) по нажатию другой кнопки? Я создал дополнительный класс и...

Как изменить ссылку по нажатию кнопки? - Программирование Android
Кто подскажет, как тут, по нажатию кнопки менять ссылки? URL feedUrl = null; try { feedUrl = new...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Mikalai
256 / 232 / 93
Регистрация: 11.01.2015
Сообщений: 653
07.08.2015, 01:27     Как заменить кнопки ? Бьюсь третьи сутки #2
как определить ,что была нажата ,допустим кнопка 3 на первом активити
Так же как определяешь какая кнопка нажата, при обработке нажатий нескольких кнопок одним методом. Примерно так:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public void onLongClick(View v) {
    
    switch(v.getId()) {
        case R.id.button1: 
        команда;
        break;
    case R.id.button2: 
        команда;
        break;
    .....................
    default: 
        оператор;
        break;
    }
}
Valakin
430 / 96 / 15
Регистрация: 21.02.2015
Сообщений: 729
07.08.2015, 08:16     Как заменить кнопки ? Бьюсь третьи сутки #3
Цитата Сообщение от yuriy m Посмотреть сообщение
как определить ,что была нажата ,допустим кнопка 3
логично что для этого нужно передать информацию с первой активити во вторую
например, можно создать класс application переменные которого можно получить и в первом и во втором активити
PaDyra
32 / 32 / 8
Регистрация: 06.01.2012
Сообщений: 142
07.08.2015, 09:52     Как заменить кнопки ? Бьюсь третьи сутки #4
Цитата Сообщение от Valakin Посмотреть сообщение
логично что для этого нужно передать информацию с первой активити во вторую
Java
1
2
3
Intent intent = new Intent(ClassName.this, TheSecondActivity.class);
intent.putExtra("buttonNumber", 1); // номер кнопки 1, 2, 3... и т.д.
startActivity(intent);
в другом активити просто извлекаете данные и смотрите, какая кнопка была нажата
yuriy m
0 / 0 / 0
Регистрация: 06.08.2015
Сообщений: 7
07.08.2015, 10:06  [ТС]     Как заменить кнопки ? Бьюсь третьи сутки #5
Домой приеду выложу код. Как организовано сейчас - при нажатии длительно на любую из кнопок на первом активити, первое ,мы присваиваем переменной id кнопки,тем самым мы знаем какая кнопка была нажата последней. Второе вызываем intent и переходим на другое активити,где много кнопок. При нажатии на любую из кнопок,вы возвращаем Id кнопки из второго в первую активити. А вот дальше начинаются проблемы. Нам же кроме id нужно еще текст и логотип присвоить к кнопке,пусть это громоздко ,но можно организовать... Но почему-то основная проблема вылазит в том ,что кнопки на первой активитм,начинают присваиваться хаотично,Ведь может случится так что на первой активити есть две одинаковые кнопки под одним и темже ID... Вот тогда все получается через Ж. А можно ли как-то отслеживать кнопки не по id ? а допустим по индексу привязанный конкретно к своему месту в лайоут ? Как вообще грамотно организовать алгоритм замены кнопок ?
PaDyra
32 / 32 / 8
Регистрация: 06.01.2012
Сообщений: 142
07.08.2015, 10:45     Как заменить кнопки ? Бьюсь третьи сутки #6
Цитата Сообщение от yuriy m Посмотреть сообщение
Как вообще грамотно организовать алгоритм замены кнопок ?
Что из себя представляет "замена кнопок"? Поменять название, поменять действие на нажатие, или что-то другое?
yuriy m
0 / 0 / 0
Регистрация: 06.08.2015
Сообщений: 7
07.08.2015, 11:05  [ТС]     Как заменить кнопки ? Бьюсь третьи сутки #7
Картинка в первом посте. Есть основное активити. На нем допустим шесть кнопок, каждая кнопка имеет свою функцию при нажатии. Допустим при первом запуске программы,после установки,кнопки выполняют функцию по делфолту. Кнопка 1 = функция1,Кнопка 2 = функция2 и т.д. Но существует намного больше функций кнопок,чем может вместить в себя основной экран,допустим 18 . Захотелось допустим мне поменять функции кнопок либо местами из этих шести ,либо заменить какие на те из 12 новых ,которые есть на другом активити. То я нажимаю на кнопку ,длительным нажатием onLongClick допустим на кнопку 2 в первом активити и попадаю на экран второго активити ,где есть 18 кнопок. При нажатии на любую из них ,я автоматом возвращаюсь на первый экран и кнопка №2 уже имеет другую функцию. Которая равняется той кнопке,которую я нажимал на активити 2. Соответственно кнопка 2 ,должна поменять еще и внешний вид (текст,значек,и.т.д). Ну как-то так.
Ну и соответственно ,после выхода из программы ,сохранить свои новые параметры (но это уже другая история...)
PaDyra
32 / 32 / 8
Регистрация: 06.01.2012
Сообщений: 142
07.08.2015, 11:11     Как заменить кнопки ? Бьюсь третьи сутки #8
Цитата Сообщение от yuriy m Посмотреть сообщение
Но существует намного больше функций кнопок,чем может вместить в себя основной экран,допустим 18
ScrollView и ваши проблемы будут решены с количеством кнопок)

Добавлено через 3 минуты
Цитата Сообщение от yuriy m Посмотреть сообщение
При нажатии на любую из них ,я автоматом возвращаюсь на первый экран и кнопка №2 уже имеет другую функцию. Которая равняется той кнопке,которую я нажимал на активити 2. Соответственно кнопка 2 ,должна поменять еще и внешний вид (текст,значек,и.т.д). Ну как-то так.
Если хотите именно таким образом делать... то советую использовать Fragment-ы. Одно Activity и просто подгружаете туда нужный фрагмент, соответственно у каждого фрагмента можете описывать любой функционал, и обрабатывать нажатия
Mikalai
256 / 232 / 93
Регистрация: 11.01.2015
Сообщений: 653
07.08.2015, 12:40     Как заменить кнопки ? Бьюсь третьи сутки #9
Ведь может случится так что на первой активити есть две одинаковые кнопки под одним и темже ID...
Не может быть 2-х одинаковых ID
Valakin
430 / 96 / 15
Регистрация: 21.02.2015
Сообщений: 729
07.08.2015, 12:59     Как заменить кнопки ? Бьюсь третьи сутки #10
Цитата Сообщение от Mikalai Посмотреть сообщение
Не может быть 2-х одинаковых ID
да, это точно, тогда бы вся логика рухнула, в файле R можно убедится в этом
Pablito
2455 / 1900 / 591
Регистрация: 12.05.2014
Сообщений: 6,702
Завершенные тесты: 1
07.08.2015, 12:59     Как заменить кнопки ? Бьюсь третьи сутки #11
я ба начал с изучения метода startActivityForResult что бы понимать вообще как можно получить ответ от второй активити
yuriy m
0 / 0 / 0
Регистрация: 06.08.2015
Сообщений: 7
07.08.2015, 13:48  [ТС]     Как заменить кнопки ? Бьюсь третьи сутки #12
Цитата Сообщение от Паблито Посмотреть сообщение
я ба начал с изучения метода startActivityForResult что бы понимать вообще как можно получить ответ от второй активити
Да с этим все вроде ок,результат я получаю...

Цитата Сообщение от PaDyra Посмотреть сообщение
Если хотите именно таким образом делать... то советую использовать Fragment-ы. Одно Activity и просто подгружаете туда нужный фрагмент, соответственно у каждого фрагмента можете описывать любой функционал, и обрабатывать нажатия
Насчет фрагментов ,я тоже подумываю....

Добавлено через 3 минуты
Цитата Сообщение от PaDyra Посмотреть сообщение
ScrollView и ваши проблемы будут решены с количеством кнопок)
Смотря как можно организовать. Если при длительном нажатии выпадал список,и при выборе ставилась кнопка,то да.
А если одной кнопкой просто список ,то это немного не то...
Pablito
2455 / 1900 / 591
Регистрация: 12.05.2014
Сообщений: 6,702
Завершенные тесты: 1
07.08.2015, 13:54     Как заменить кнопки ? Бьюсь третьи сутки #13
раскрой секрет - распиши что именно будет на этих кнопках, многие пользователи видали много разных компонентов и, вероятно, смогут подсказать как эту задачу решить без всех этих потуг с 18-ю кнопками
PaDyra
32 / 32 / 8
Регистрация: 06.01.2012
Сообщений: 142
07.08.2015, 14:58     Как заменить кнопки ? Бьюсь третьи сутки #14
Цитата Сообщение от yuriy m Посмотреть сообщение
Смотря как можно организовать. Если при длительном нажатии выпадал список,и при выборе ставилась кнопка,то да.
А если одной кнопкой просто список ,то это немного не то...
ScrollView это не список, это полоса прокрутки, и если количество элементов будет больше, чем вмещает экран, то появится бегунок
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.08.2015, 16:20     Как заменить кнопки ? Бьюсь третьи сутки
Еще ссылки по теме:

как правильно раставить кнопки в Table Row? - Программирование Android
привет всем. Вот решил написать первую игру на андроид и столкнулся с проблемой. Вообще есть 4 кнопки, на них меняется текст, и когда текст...

Как поменять цвет нажатой кнопки в runtime? - Программирование Android
Надо для кнопки менять цвета в нажатом/ненажатом состоянии. Во время работы программы. Цвет бордюра тоже надо менять. Как это делать?

Как запустить функционал кнопки FAB из RecyclerListAdapter - Программирование Android
Добрый день. Ситуация такая: На кнопке FAB есть определенный функционал (создание элемента) Хочу добавить редактирование элемента и...

Как сделать запрос на URL без нажатия кнопки? - Программирование Android
Добрый день. Подскажите, пожалуйста, как можно реализовать запрос GET/POST без нажатия какой либо кнопки на исполнение со стороны...


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

Или воспользуйтесь поиском по форуму:
yuriy m
0 / 0 / 0
Регистрация: 06.08.2015
Сообщений: 7
07.08.2015, 16:20  [ТС]     Как заменить кнопки ? Бьюсь третьи сутки #15
Цитата Сообщение от PaDyra Посмотреть сообщение
ScrollView это не список, это полоса прокрутки, и если количество элементов будет больше, чем вмещает экран, то появится бегунок
Нет это не то. Должно выглядеть как на картинке в первом посте...
Yandex
Объявления
07.08.2015, 16:20     Как заменить кнопки ? Бьюсь третьи сутки
Ответ Создать тему
Опции темы

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