问:它提示说bummer dnt 4get使用“ setIcon()方法”......。
MainActivity.java
导入 android.app.ActionBar ;
导入 android.app.FragmentTransaction ;
导入 android.os.Bundle ;
导入 android.support.v4.app.FragmentActivity ;
公共类MainActivity扩展FragmentActivity实现ActionBar 。TabListener { //为简洁起见,一些代码已被省略!公共ActionBar mActionBar ; @Override public void onCreate (Bundle savedInstanceState ){超级。onCreate
(savedInstanceState );
的setContentView (ř 。布局。activity_main ); mActionBar = getActionBar (); mActionBar 。setNavigationMode (动作条。NAVIGATION_MODE_TABS ); PagerAdapter pagerAdapter = new PagerAdapter (getSupportFragmentManager ()); //为了简洁省略...一些代码为(INT我= 0 ;我< pagerAdapter 。getCount将
(); 我++) {
ActionBar 。Tab tab = mActionBar 。newTab (); 标签。setTabListener (this ); / * * /选项卡。的setText (pagerAdapter 。getPageTitle (我)); mActionBar 。addTab (tab ); } } //这些监听方法是有意空白@覆盖公共无效onTabSelected (动作条。
标签 片, FragmentTransaction fragmentTransaction ) { }
@覆盖公共空隙onTabUnselected (动作条。标签片,FragmentTransaction fragmentTransaction ){ } @覆盖公共空隙onTabReselected (动作条。标签片,FragmentTransaction fragmentTransaction ){ } }
ArtistActivity.java
导入 android.app.ActionBar ;
导入 android.app.FragmentTransaction ;
导入 android.os.Bundle ;
导入 android.support.v4.app.FragmentActivity ;
公共类ArtistActivity扩展FragmentActivity实现ActionBar 。TabListener { //为简洁起见,一些代码已被省略!公共ActionBar mActionBar ; @Override public void onCreate (Bundle savedInstanceState ){超级。onCreate
(savedInstanceState );
的setContentView (ř 。布局。activity_artist ); mActionBar = getActionBar (); mActionBar 。setNavigationMode (动作条。NAVIGATION_MODE_TABS ); PagerAdapter pagerAdapter = new PagerAdapter (getSupportFragmentManager ()); //为了简洁省略...一些代码为(INT我= 0 ;我< pagerAdapter 。getCount将
(); 我++) {
ActionBar 。Tab tab = mActionBar 。newTab (); 标签。setTabListener (this ); / * *在此处添加您的代码以设置图标! tab.setIcon(pagerAdapter.getIcon(i)); * / mActionBar 。addTab (tab ); } } //这些侦听方法是有意空白@覆盖公共空隙onTabSelected (动作条。标签片,
FragmentTransaction fragmentTransaction ) { }
@覆盖公共空隙onTabUnselected (动作条。标签片,FragmentTransaction fragmentTransaction ){ } @覆盖公共空隙onTabReselected (动作条。标签片,FragmentTransaction fragmentTransaction ){ } }
PagerAdapter.java
导入 android.content.Context ;
导入 android.support.v4.app.FragmentManager ;
导入 android.support.v4.app.FragmentPagerAdapter ;
公共类PagerAdapter扩展FragmentPagerAdapter { / * *为简洁起见,一些代码已被省略! * / public PagerAdapter (FragmentManager fm ){ //省略代码} @Override public int getCount (){ return 3 ; } @Override public
CharSequence getPageTitle (int position ) {
switch (position ){ case 0 :返回“歌曲” ;情况1 :返回“相册” ;案例2 :返回“艺术家” ;}返回空值; } public int getIcon (int position ){ switch (position ){ case 0 :
返回 [R 。可绘制的。ic_tab_profile ;
情况1 :返回ř 。可绘制的。ic_tab_discography ; 情况下2 :返回ř 。可绘制的。ic_tab_related_artists ; }返回[R 。可绘制的。ic_tab_profile ; } }
答:该挑战使用getPageTitle(int i)方法添加了文本。
在本教程中,您使用的setIcon()方法和方法遵循相同的概念,但图标是相同getIcon的PagerAdapter。您添加的行与您已经编写的行非常相似-它仅在另一活动中进行并处理图标:
标签。的setIcon (pagerAdapter 。调用getIcon (我));