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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 5.00
Т_Ё_М_А
23 / 6 / 2
Регистрация: 14.12.2009
Сообщений: 282
#1

TabHost и переключение экранов - Программирование Android

13.09.2013, 21:20. Просмотров 1353. Ответов 5
Метки нет (Все метки)

Доброго времени суток и с Днём Программиста!=)
У меня возникла ситуация... ЕстьTabHost c тремя вкладками. Содержимым каждой вкладки является activity. На втором activity расположены кнопки, при нажатии которых должен загружаться новый activity. Как это сделать?
У меня получается как на рисунке 1, а надо как на рисунке 2.
Миниатюры
TabHost и переключение экранов  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.09.2013, 21:20     TabHost и переключение экранов
Посмотрите здесь:

tabhost - Программирование Android
всем привет много искал но всё таки не нашёл мне нужно что бы вкладки были с лева 5 штук , но что то найти не могу как сделать их...

TabHost - Программирование Android
Как можно сделать список табов в табе? Возможно это решается без TabHost?

TabHost и TabWidget - Программирование Android
Вот решил создать Tab-ы на андроиде... нашел простенький примерчик, набрал код, почитал справку , скомпилил и все вроде нормально. Но при...

TabHost и вкладки - Программирование Android
ребят создаю вкладку простым кодом tabSpec = tabHost.newTabSpec("tag1"); tabSpec.setIndicator("5"); ...

Использование TabHost - Программирование Android
Я ни как не могу понять как использовать TabHost вместе с фрагментом. Пожалуйста приведите пример.

2 tabhost в один активити - Программирование Android
как это сделать ? как я не кручу у меня при tabHost.addTab(tabSpec); выводит нул поинт экзепшен :(( <?xml version="1.0"...

Своя картинка в TabHost - Программирование Android
Как загрузить свою картинку (там где кружочки нарисованы) ?

Размер шрифта Tabhost - Программирование Android
Сабж, http://stackoverflow.com/questions/5788971/how-to-change-the-font-size-of-tabhost-in-android пробывал вот эту тему, вроде добавил все...

Порядок вкладок в TabHost - Программирование Android
Приветствую господа программисты. Встал вопрос: есть экран со вкладками. Необходимо поменять порядок этих самых вкладок. Мне предлагают...

Ошибка при TabHost - Программирование Android
При добавлении компонента, выходит ошибка "exception raised during rendering: Could not create tab content because could not find view...

Смена картинки в TabHost - Программирование Android
Доброго времени суток ) создал TabHost поставил на него иконку , при клике на вкладку хочу что бы картинка менялась ! сделал вот таким вот...

TabHost, ListView и custom Adapter - Программирование Android
Здравствуйте. В общем есть TabHost c 3 вкладками. При нажатии на вкладку ХЗ показаться данные в ListView, но у меня при нажатии на эту...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Т_Ё_М_А
23 / 6 / 2
Регистрация: 14.12.2009
Сообщений: 282
13.09.2013, 21:27  [ТС]     TabHost и переключение экранов #2
Вот главный activity
Кликните здесь для просмотра всего текста
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
public class MainActivity extends TabActivity  {
   
       @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        // получаем TabHost
        TabHost tabHost = getTabHost();
        // инициализация была выполнена в getTabHost
        // метод setup вызывать не нужно
       // TabHost.TabSpec tabSpec;
        TabSpec spec;
        
        Intent intent;
        View view;
        ImageView imgView;
        
        
        tabHost.getTabWidget().setDividerDrawable(R.drawable.divider); //разделитель между табами
        int id;
 
        intent = new Intent().setClass(this, OneActivity.class);
        view = createTabView(tabHost.getContext(), "О методике", id=R.drawable.icon_methods); //создаём пользовательский view для таба
        spec = tabHost.newTabSpec("tab1").setIndicator(view).setContent(intent);   
        tabHost.addTab(spec);
        
        intent = new Intent().setClass(this, TwoActivity.class);
        view = createTabView(tabHost.getContext(), "Упражнения", id=R.drawable.icon_exercises);
        spec = tabHost.newTabSpec("tab2").setIndicator(view).setContent(intent);
        tabHost.addTab(spec);
        
        intent = new Intent().setClass(this, ThreeActivity.class);
        view = createTabView(tabHost.getContext(), "Полная версия", id=R.drawable.icon_full_version);
        spec = tabHost.newTabSpec("tab3").setIndicator(view).setContent(intent);   
        tabHost.addTab(spec);
        
        
    }
    private static View createTabView(final Context context, final String text, int id) {
 
        View view = LayoutInflater.from(context).inflate(R.layout.tab_bg, null);
        ImageView iv=(ImageView) view.findViewById(R.id.imageView1);
        TextView tv = (TextView) view.findViewById(R.id.tabsText);
        tv.setText(text);
        iv.setImageResource(id);
        return view;
}
    
    
}

Вот activity второй вкладки
Кликните здесь для просмотра всего текста

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
public class TwoActivity extends Activity  implements OnClickListener{
    Button  button1,  button2,  button3;
    
      protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.two);
    
               button1 = (Button)findViewById(R.id.button1);
           button2 = (Button)findViewById(R.id.button2);
           button3 = (Button)findViewById(R.id.button3);
           
        // устанавливаем один обработчик для всех кнопок
              button1.setOnClickListener(this);
              button2.setOnClickListener(this);
              button3.setOnClickListener(this);
           
            
 
      }
          
      // анализируем, какая кнопка была нажата
      @Override
      public void onClick(View v){
          switch (v.getId()) {
            case R.id.button1: 
            Intent intent = new Intent().setClass(this, Exercise1.class);
            startActivity(intent);
            
                
                break;
            case R.id.button2:  break;
            case R.id.button3: break;
          }
      }
Vladiator
1566 / 636 / 25
Регистрация: 24.02.2009
Сообщений: 9,269
13.09.2013, 21:30     TabHost и переключение экранов #3
Можно попробовать в одном активити пользоваться несколькими contentView, только не знаю, насколько это красиво.
Т_Ё_М_А
23 / 6 / 2
Регистрация: 14.12.2009
Сообщений: 282
13.09.2013, 22:59  [ТС]     TabHost и переключение экранов #4
Цитата Сообщение от Vladiator Посмотреть сообщение
Можно попробовать в одном активити пользоваться несколькими contentView, только не знаю, насколько это красиво.
То есть в OnCreate менять файл xml? setContentView(R.layout...); ?
А другого способа нет?
Vladiator
1566 / 636 / 25
Регистрация: 24.02.2009
Сообщений: 9,269
13.09.2013, 23:19     TabHost и переключение экранов #5
Цитата Сообщение от Т_Ё_М_А Посмотреть сообщение
То есть в OnCreate менять файл xml? setContentView(R.layout...); ?
И в onCreate, и тогда, когда нужно сменить.
Netscape
371 / 358 / 48
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
14.09.2013, 01:17     TabHost и переключение экранов #6
Можно использовать разные фрагменты для одного activity.
TabActivity deprecated, кстати.
Yandex
Объявления
14.09.2013, 01:17     TabHost и переключение экранов
Ответ Создать тему
Опции темы

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