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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.73
avvvl
3 / 3 / 0
Регистрация: 16.06.2013
Сообщений: 172
#1

Поворот экрана. Сохранение данных, но смена размеров компонентов - Android

17.08.2014, 13:17. Просмотров 1374. Ответов 6
Метки нет (Все метки)

Допустим на экране есть кнопка, на которой есть текст. При создании активити выбирается рандомное число и оно ставится как название кнопки. Также при создании активити устанавливается размер кнопки исходя из ширины и высоты экрана(ширина / 10 = ширина кнопки). При повороте экрана пересоздаеться активити и ставится новое название кнопки ну и опять таки меняется размер(ширина и высота заново высчитываются). Нужно что б при смене ориентации название оставалось, а размер менялся.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.08.2014, 13:17     Поворот экрана. Сохранение данных, но смена размеров компонентов
Посмотрите здесь:

Определение размеров экрана устройства Android
Поворот Экрана Android
Смена ориентации экрана Android
Сохранение объекта при повороте экрана Android
Кнопки с картинкой и поворот экрана Android
Android Поворот куба сначала вокруг оси y с.к. экрана потом вокруг оси x с.к. экрана
Android Как отследить поворот экрана
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
646kapeh064
59 / 58 / 15
Регистрация: 09.12.2013
Сообщений: 206
17.08.2014, 13:28     Поворот экрана. Сохранение данных, но смена размеров компонентов #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
avvvl, размер можно задать в layout слое, чтоб кнопка сама изменяла свой размер. Для чего это тебе?

Цитата Сообщение от avvvl Посмотреть сообщение
Нужно что б при смене ориентации название оставалось
У активити есть методы:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
// cnt - переменная типа int
 
// Вызывается перед поворотом экрана
protected void onSaveInstanceState(Bundle outState) {
    super.onSaveInstanceState(outState);
    outState.putInt("count", cnt);
}
 
// Вызывается после поворота экрана
protected void onRestoreInstanceState(Bundle savedInstanceState) {
    super.onRestoreInstanceState(savedInstanceState);
    cnt = savedInstanceState.getInt("count");
}
avvvl
3 / 3 / 0
Регистрация: 16.06.2013
Сообщений: 172
17.08.2014, 13:57  [ТС]     Поворот экрана. Сохранение данных, но смена размеров компонентов #3
Как именно и что указать в layout слое что бы кнопка сама меняла размер? А насчет переменной то как быть если их много - каждую заносить?
646kapeh064
59 / 58 / 15
Регистрация: 09.12.2013
Сообщений: 206
17.08.2014, 14:01     Поворот экрана. Сохранение данных, но смена размеров компонентов #4
Цитата Сообщение от avvvl Посмотреть сообщение
то как быть если их много - каждую заносить?
Можешь сделать класс в котором все будешь хранить, и прописать его как static:
Java
1
private static MyClass myClass = new MyClass(); // при повороте экрана это поле не уничтожится, оно статичное
Цитата Сообщение от avvvl Посмотреть сообщение
Как именно и что указать в layout слое что бы кнопка сама меняла размер
Указывай размер в dp, эти единицы на разных экранах имеют разный размер. Либо просто растягивай кнопку по всему слою задавая параметр ширины math_parent.
avvvl
3 / 3 / 0
Регистрация: 16.06.2013
Сообщений: 172
17.08.2014, 14:24  [ТС]     Поворот экрана. Сохранение данных, но смена размеров компонентов #5
646kapeh064
А как быть с картинкой? Как её масштабировать под разные экраны, если не известно какая у неё ширина и высота(например много картинок разных размеров)? ну что бы пропорции сохранить?
646kapeh064
59 / 58 / 15
Регистрация: 09.12.2013
Сообщений: 206
17.08.2014, 17:42     Поворот экрана. Сохранение данных, но смена размеров компонентов #6
Цитата Сообщение от avvvl Посмотреть сообщение
А как быть с картинкой?
Тут я тоже не знаю) Я уже создавал тему по этому вопросу, но никто так и не ответил.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.08.2014, 02:49     Поворот экрана. Сохранение данных, но смена размеров компонентов
Еще ссылки по теме:

Android Смена ориентации экрана перезапускает приложение
Android Сделать что-бы иконки грузились не только исходя из dpi, но и из размеров экрана тоже?
Запретить поворот экрана на телефонах и позволить его на планшетах Android
Android Запретить поворот экрана
Android Поворот экрана и пересоздание обьектов. Как делают матёрые разработчики?

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

Или воспользуйтесь поиском по форуму:
yura91
29 / 27 / 2
Регистрация: 23.10.2013
Сообщений: 2,235
18.08.2014, 02:49     Поворот экрана. Сохранение данных, но смена размеров компонентов #7
как программно узнать размеры экрана? можете привести фрагмент кода?
Yandex
Объявления
18.08.2014, 02:49     Поворот экрана. Сохранение данных, но смена размеров компонентов
Ответ Создать тему
Опции темы

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