2015-02-21 2 views
5

Я пытаюсь создать вкладки салфетки в затмении. Но когда я импортирую android.app.ActionBar.Tab; он предупреждает меня как импорт «Тип ActionBar.Tab устарел».Тип ActionBar.Tab устарел

И он делает большую часть моего кода предупреждением, и он ударяет по нему.

import android.support.v4.app.FragmentActivity; 
import android.app.ActionBar; 
import android.app.ActionBar.Tab; 
import android.app.ActionBar.TabListener; 
import android.app.FragmentTransaction; 
import android.os.Bundle; 
import android.support.v4.app.FragmentTabHost; 
import android.util.Log; 


public class MainActivity extends FragmentActivity implements TabListener { 
    ActionBar actionBar; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     actionBar = getActionBar(); 
     actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); 

     ActionBar.Tab shops = actionBar.newTab(); 
     shops.setText("SHOPS"); 
     shops.setTabListener(this); 

     ActionBar.Tab floorplan = actionBar.newTab(); 
     floorplan.setText("FLOOR PLAN"); 
     floorplan.setTabListener(this); 

     ActionBar.Tab browser = actionBar.newTab(); 
     browser.setText("BROWSER"); 
     browser.setTabListener(this); 

     ActionBar.Tab nav = actionBar.newTab(); 
     nav.setText("NAVIGATION"); 
     nav.setTabListener(this); 

     actionBar.addTab(shops); 
     actionBar.addTab(floorplan); 
     actionBar.addTab(browser); 
     actionBar.addTab(nav); 
    } 

Что я могу сделать сейчас? Существует ли какое-либо возможное решение для преодоления этих предупреждений ???

ответ

9

Google осуждается вкладки ActionBar в пользу PagerTabStrip и PagerTitleStrip, и они являются частью библиотеки поддержки v4 и служит прямой заменой.

Google предоставляет образцы для них, как вы можете видеть в SlidingTabsBasic или SlidingTabsColors, что также объясняется в этом video.

+2

«Прямая замена»? Я пробовал PagerTabStrip и PagerTitleStrip, и ни один из них не выглядит как ActionBar с режимом табуляции. Вкладки панели действий являются статическими до тех пор, пока все они подходят к экрану, и только цветной индикатор перемещается при смене страниц, тогда как PagerTabStrip будет прокручивать весь текст заголовка страницы. Проект SlidingTabsColors, однако, похоже на аналогичное решение, однако кажется странным, что они устарели вкладки ActionBar и заменили его решением, связанным с написанием пользовательского представления сотнями строк кода !? – JHH

+0

Не говоря уже о том, что ни PagerTabStrip, ни TabLayout не будут перемещаться в ActionBar, даже если есть много места, и они просто будут использовать ценную экранную недвижимость. Я поставил под сомнение разумность Android devs, теперь я убежден, что Android разработан идиотами. –

1

хорошо, они устарели, и они не получат дальнейшей поддержки.

У вас есть несколько вариантов:

  • Вы не можете использовать вкладки.
  • Вы можете создать их «вручную» с линейным расположением и 4 текстами.
  • Вы можете использовать ViewPager + PagerTabStrip.
  • Или вы можете просто отключить предупреждения о настройках (но помните, что они там по уважительной причине)
3

Да вкладка панели действий устарела в android l. Альтернатива этой панели инструментов представлена ​​в этой версии. Вы можете обратиться к этому link

Смежные вопросы