Урок 108. Android 3. ActionBar. Навигация - табы и выпадающий список

Обсуждение уроков
Аватара пользователя
damager82
Администратор
Сообщения: 1383
Зарегистрирован: 07 янв 2012, 11:32
Контактная информация:

Урок 108. Android 3. ActionBar. Навигация - табы и выпадающий список

Сообщение damager82 » 26 сен 2012, 23:00

 В этом уроке:
- используем навигацию в ActionBar


Click here to read this article!
Последний раз редактировалось damager82 23 май 2017, 22:10, всего редактировалось 6 раз.
Добро пожаловать на форум сайта StartAndroid
ИзображениеИзображение

Andy_ua
Сообщения: 21
Зарегистрирован: 06 июл 2012, 17:23

Re: Урок 108. Android 3. ActionBar. Навигация - табы и выпад

Сообщение Andy_ua » 03 окт 2012, 16:49

нет текста разметки main.xml

Аватара пользователя
damager82
Администратор
Сообщения: 1383
Зарегистрирован: 07 янв 2012, 11:32
Контактная информация:

Re: Урок 108. Android 3. ActionBar. Навигация - табы и выпад

Сообщение damager82 » 04 окт 2012, 09:59

Andy_ua писал(а):нет текста разметки main.xml
Я написал об этом: "Никакие строки не добавляем, основной layout не трогаем."
Добро пожаловать на форум сайта StartAndroid
ИзображениеИзображение

War
Сообщения: 2
Зарегистрирован: 05 окт 2012, 14:38

Re: Урок 108. Android 3. ActionBar. Навигация - табы и выпад

Сообщение War » 05 окт 2012, 15:29

Спасибо за урок! А как быть с табами на втором андроиде?
Дело в том, что я сделал табы через TabHost, но возникает небольшая проблема.
В приложении, в качестве контента внутри табов, я использую списки, нажав на один из пунктов списка вызывается активити (через new Intent), при вызове нового активити табы пропадают, а нужно чтобы новое активити грузилось внутри активного таба. Как такое можно реализовать?

Аватара пользователя
Ganster41
Сообщения: 1
Зарегистрирован: 16 окт 2012, 14:03

Re: Урок 108. Android 3. ActionBar. Навигация - табы и выпад

Сообщение Ganster41 » 16 окт 2012, 14:12

Для старых андроидов есть Support library. Там есть фрагменты, а табы можно либо самому нарисовать, либо сделать как на этом уроке, с помощью ActionBarSherlock.
TabHost сам гугл уже не рекомендует использовать :)

Аватара пользователя
damager82
Администратор
Сообщения: 1383
Зарегистрирован: 07 янв 2012, 11:32
Контактная информация:

Re: Урок 108. Android 3. ActionBar. Навигация - табы и выпад

Сообщение damager82 » 19 окт 2012, 14:34

War писал(а):Спасибо за урок! А как быть с табами на втором андроиде?
Дело в том, что я сделал табы через TabHost, но возникает небольшая проблема.
В приложении, в качестве контента внутри табов, я использую списки, нажав на один из пунктов списка вызывается активити (через new Intent), при вызове нового активити табы пропадают, а нужно чтобы новое активити грузилось внутри активного таба. Как такое можно реализовать?
Обсуждали такую тему, правда не знаю чем дело кончилось.
viewtopic.php?f=3&t=901&hilit=tab+activity#p3863
Добро пожаловать на форум сайта StartAndroid
ИзображениеИзображение

Shifted
Сообщения: 7
Зарегистрирован: 12 окт 2012, 13:52

Re: Урок 108. Android 3. ActionBar. Навигация - табы и выпад

Сообщение Shifted » 19 окт 2012, 14:39

Ganster41 писал(а):Для старых андроидов есть Support library. Там есть фрагменты, а табы можно либо самому нарисовать, либо сделать как на этом уроке, с помощью ActionBarSherlock.
TabHost сам гугл уже не рекомендует использовать :)
если не ошибаюсь, но ActionBarSherlock использует туже Support library

tohafrit
Сообщения: 1
Зарегистрирован: 21 янв 2013, 15:56

Re: Урок 108. Android 3. ActionBar. Навигация - табы и выпад

Сообщение tohafrit » 21 янв 2013, 16:05

Спасибо за урок! Использовал в своем приложении ActionBar - навигация в виде табов. И все работало отлично, но потом я кастомизировал title и добавил лого для моего Activity и после этого getActionBar начал возвращать null? Почему так происходит? Если нужно могу скинуть код.

Аватара пользователя
damager82
Администратор
Сообщения: 1383
Зарегистрирован: 07 янв 2012, 11:32
Контактная информация:

Re: Урок 108. Android 3. ActionBar. Навигация - табы и выпад

Сообщение damager82 » 24 янв 2013, 13:02

tohafrit писал(а):Спасибо за урок! Использовал в своем приложении ActionBar - навигация в виде табов. И все работало отлично, но потом я кастомизировал title и добавил лого для моего Activity и после этого getActionBar начал возвращать null? Почему так происходит? Если нужно могу скинуть код.
Скидывайте. Так трудно что-либо сказать
Добро пожаловать на форум сайта StartAndroid
ИзображениеИзображение

Аватара пользователя
dens
Сообщения: 47
Зарегистрирован: 03 фев 2013, 00:14

Re: Урок 108. Android 3. ActionBar. Навигация - табы и выпад

Сообщение dens » 03 фев 2013, 00:18

А не знаете, существует ли возможность снести табы вниз (как это происходит с половиной item'ов меню, если не хватает места на экране, но указана опция "splitActionBarWhenNarrow")? Поискал на оф. сайте, но что-то не нашёл.

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Урок 108. Android 3. ActionBar. Навигация - табы и выпад

Сообщение rezak90 » 03 фев 2013, 00:28

dens писал(а):А не знаете, существует ли возможность снести табы вниз (как это происходит с половиной item'ов меню, если не хватает места на экране, но указана опция "splitActionBarWhenNarrow")? Поискал на оф. сайте, но что-то не нашёл.
http://developer.android.com/reference/ ... arams.html
R.id.team
Политика на форуме запрещена

Аватара пользователя
dens
Сообщения: 47
Зарегистрирован: 03 фев 2013, 00:14

Re: Урок 108. Android 3. ActionBar. Навигация - табы и выпад

Сообщение dens » 04 фев 2013, 01:35

Спасибо, попробую на днях.

upd: чуть отвлечённо, но хочется спросить: в уроке 76 (и паре следующих) проходили табы (TabAcivity запретили, теперь предлагают переходить на фрагменты). Затем был урок с ActionBar, он поддерживает свои табы и всё в этом роде. Но, есть ещё такая вещь как FragmentTabHost в связке с FragmentActivity.
В связи с этим вопрос: чем удобнее пользоваться? табами, прикрученными к ActionBar, или табами из фрагментов?

Я так лично для себя заметил, что для лучшей переносимости (без подгрузки сторонних либ), удобнее использовать FragmentActivity (если можно обойтись без ActionBar в приложении вообще), ибо FragmentActivity уже включён в библиотеку support для совместимости со старыми версиями.

Аватара пользователя
dens
Сообщения: 47
Зарегистрирован: 03 фев 2013, 00:14

Re: Урок 108. Android 3. ActionBar. Навигация - табы и выпад

Сообщение dens » 05 фев 2013, 22:58

Что скажете?

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Урок 108. Android 3. ActionBar. Навигация - табы и выпад

Сообщение rezak90 » 06 фев 2013, 00:09

а что сказать, чем удобней тем и пользуйтесь. Я использую табы на ActionBar'e, мне так удобнее, один адаптер который руководит табами, всё просто и удобно. На счёт FragmentTabHost ничего не знаю так как не использовал.
R.id.team
Политика на форуме запрещена

Аватара пользователя
dens
Сообщения: 47
Зарегистрирован: 03 фев 2013, 00:14

Re: Урок 108. Android 3. ActionBar. Навигация - табы и выпад

Сообщение dens » 06 фев 2013, 00:26

Решил попробовать, но при запуске примера отсюда: http://developer.android.com/reference/ ... bHost.html
В этом месте "mTabHost = (FragmentTabHost)findViewById(android.R.id.tabhost);" получаю ошибку приведения типов (не может TabHost привести к FragmentTabHost). Понятно, что это потому, что в xml у меня компонент "<TabHost android:id="@android:id/tabhost...". Если добавить вместо него FragmentTabHost, то падает при inflate (типа нету такого компонента что ли). Выложил бы Android хоть xml свои, которые приписаны, например, R.id.fragment1.
Что в xml в итоге писать, никто не сталкивался?

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Урок 108. Android 3. ActionBar. Навигация - табы и выпад

Сообщение rezak90 » 06 фев 2013, 01:13

можно же по аналогии догадаться что нужно TabHost поменять на FragmentTabHost. И конечно не сможете привести, это же разные классы с разными родителям, а на счёт примеров то их море:

Код: Выделить всё

<android.support.v4.app.FragmentTabHost
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@android:id/tabhost"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <LinearLayout
        android:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <TabWidget
            android:id="@android:id/tabs"
            android:orientation="horizontal"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0"/>

        <FrameLayout
            android:id="@android:id/tabcontent"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:layout_weight="0"/>

        <FrameLayout
            android:id="@+id/realtabcontent"
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1"/>

    </LinearLayout>
</android.support.v4.app.FragmentTabHost>
R.id.team
Политика на форуме запрещена

Аватара пользователя
dens
Сообщения: 47
Зарегистрирован: 03 фев 2013, 00:14

Re: Урок 108. Android 3. ActionBar. Навигация - табы и выпад

Сообщение dens » 06 фев 2013, 02:55

Спасибо. А с http://developer.android.com/reference/ ... arams.html пока не разобрался. Там без задания сторонних вьюшек через setCustomView не отправить табы вниз?

Діма
Сообщения: 11
Зарегистрирован: 13 июл 2012, 13:23

Re: Урок 108. Android 3. ActionBar. Навигация - табы и выпад

Сообщение Діма » 13 фев 2013, 17:41

Привіт всім, мене цікавить питання як зробити наведений приклад http://nanostuffs.com/Blog/?p=607 через Fragments? для API-8 і вище.
якщо можна наведіть приклад) буду дуже вдячний...
розглядав https://github.com/JakeWharton/ActionBa ... tTabs.java
тут один fragment в табі, можливо хтось щось підскаже.
також потрібно розглянути actionbar на якому будуть знаходитись дві кнопки переходу між fragments (вперед і назад), які знаходитимуться в одному табі)

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Урок 108. Android 3. ActionBar. Навигация - табы и выпад

Сообщение rezak90 » 13 фев 2013, 23:31

Привіт всім, мене цікавить питання як зробити наведений приклад http://nanostuffs.com/Blog/?p=607 через Fragments? для API-8 і вище
сейчас это всё в себе реализует FragmentManager, так что нет смысла писать что то своё.
тут один fragment в табі, можливо хтось щось підскаже.
он и должен быть один так как, активити одна и сколько на ней табов столько и фрагментов будет
також потрібно розглянути actionbar на якому будуть знаходитись дві кнопки переходу між fragments (вперед і назад), які знаходитимуться в одному табі)
всё просто, по одной кнопке меняем фрагмент А на фрагмент Б, по другой наоборот.
Вы видимо не совсем разобрались с FragmentManager и FragmentTransaction
R.id.team
Политика на форуме запрещена

Діма
Сообщения: 11
Зарегистрирован: 13 июл 2012, 13:23

Re: Урок 108. Android 3. ActionBar. Навигация - табы и выпад

Сообщение Діма » 14 фев 2013, 09:40

Дякую, буду детальніше читати) тільки переглянув код із Fragment детально не розбирався...

Ответить