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

Сохранение цвета Layout при повороте экрана (ПОРТРЕТ->ЛАНДШАФТ) - Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Android Динамическое создание элементов интерфейса http://www.cyberforum.ru/android-dev/thread924545.html
Здравствуйте. Мне интересно знать, как динамически создавать элементы интерфейса. Например, в цикле вызывается метод, который создает TextView, в него вставляет текст: LinearLayout layout = (LinearLayout) findViewById(R.id.L1); TextView txt = new TextView(this); txt.setText(text); layout.addView(txt);
Android Реализация интерфейса приложения Как можно реализовать показ таких новостей? http://cs537310.vk.me/u13519098/doc/f445bcb3bfee/novosti.jpg http://www.cyberforum.ru/android-dev/thread924473.html
Файловый менеджер на андроид Android
Доброго времени суток всем . Начал работать над реализацией простого файлового мененджера(всего два класса). Проблема в том что, когда я нажимаю на пункт меню , вылетает исключение : (так и не понял в чем проблема) java.lang.IndexOutOfBoundsException: Invalid index 0, size is 0 at java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:251) at...
Android ActionBarSherlock нажатие на submenu item
У меня есть субменю @Override public boolean onCreateOptionsMenu(Menu menu) { SubMenu sub = menu.addSubMenu(0, Menu.FIRST, Menu.NONE, "Меню"); sub.add(0, Menu.FIRST, 1, "Pref"); sub.add(0, Menu.FIRST, 2, "About"); sub.getItem().setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS | MenuItem.SHOW_AS_ACTION_WITH_TEXT);
Android Сервер для Android приложения http://www.cyberforum.ru/android-dev/thread924295.html
Всем привет! Нужно написать сервер для Android приложения. Сервер служит для регистрации пользователей и совершения некоторых транзакций (обмен небольшим количеством некоторой информации). Нагрузка на сервер будет небольшая, но желательно, сервер с возможностью масштабирования. Самое главное условие - SSL/TLS-соединение. И возник вопрос, как это реализовать? Http/Https - сервер или...
Android POST запрос и ASP.NET страница Доброго времени суток, нужно отправить пост запрос на страницу, но вот беда, как можно получить __VIEWSTATE и __EVENTVALIDATION? Заранее спасибо! подробнее

Показать сообщение отдельно
Symba
5 / 5 / 3
Регистрация: 10.03.2011
Сообщений: 82
25.07.2013, 09:09  [ТС]     Сохранение цвета Layout при повороте экрана (ПОРТРЕТ->ЛАНДШАФТ)
Цитата Сообщение от V0v1k Посмотреть сообщение
а зачем вы LinearLayout кастите в TableRow?
кстати, да) выискал код, сказали рабочий. Можно и так, только все равно вопрос, как вытащить int значение color из activity.getBackground() - Drawable.
Java
1
2
3
4
5
6
7
8
9
@Override
    protected void onSaveInstanceState(Bundle savedInstanceState) {     
        super.onSaveInstanceState(savedInstanceState);
        savedInstanceState.putInt("color", ((ColorDrawable)linerlayout.getBackground()).getColor());
    }
    @Override
    protected void onRestoreInstanceState(Bundle savedInstanceState){
        super.onRestoreInstanceState(savedInstanceState);
        linerlayout.setBackgroundColor(savedInstanceState.getInt("color"));
вылетал при повороте потому, что getColor() начиная с API 11 работает, а я пытался использовать на API 10.

Добавлено через 19 минут
только что подсказали на другом форуме ссылку.
написал этот метод - входной параметр LinearLayout, на выходе int значение цвета
Java
1
2
3
4
5
6
7
public int getBgColor (LinearLayout linerlayout){
        ColorDrawable colorDrawable=((ColorDrawable) linerlayout.getBackground());
        Bitmap bitmap= Bitmap.createBitmap(1, 1, Config.ARGB_4444);
        Canvas canvas= new Canvas(bitmap);
        colorDrawable.draw(canvas);   
        int color = bitmap.getPixel(0, 0);  
        return color;
например
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public LinearLayout linerlayout;
public Button btn;
 @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        linerlayout = (LinearLayout)findViewById(R.id.linerlayout);
        btn = (Button)findViewById(R.id.btnSetColor);
        
    }
public void btnSetColor_Click(View v){
        int color = getBgColor(linerlayout);
        btn.setTextColor(color);
    }
Добавлено через 6 минут
в целом методы сохранения-восстановления выглядят теперь у меня так
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
 @Override
    protected void onSaveInstanceState(Bundle savedInstanceState) {     
        super.onSaveInstanceState(savedInstanceState);
        int color = getBgColor(linerlayout);
        savedInstanceState.putInt("color", color);       
        savedInstanceState.putString("text",tvInfo.getText().toString());
    }
    @Override
    protected void onRestoreInstanceState(Bundle savedInstanceState){
        super.onRestoreInstanceState(savedInstanceState);
        linerlayout.setBackgroundColor(savedInstanceState.getInt("color"));
        tvInfo.setText(savedInstanceState.getString("text"));
    }
 
Текущее время: 15:00. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru