Как установить изображение вкладки при использовании FragmentTabHost?

Я написал приложение Tab Navigation, используя android.support.v4.app.FragmentTabHost. Я хочу добавить фоновое изображение в свои вкладки. Код здесь:

  protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_tab);
    instance = this;


    history = new HashMap<String, Stack<Fragment>>();
    tabhost = (FragmentTabHost)findViewById(android.R.id.tabhost);

    tabhost = (FragmentTabHost)findViewById(android.R.id.tabhost);
    tabhost.setup(this, getSupportFragmentManager(), R.id.realtabcontent);

    TabSpec tab1 = tabhost.newTabSpec("0").setIndicator("Home");
    TabSpec tab2 = tabhost.newTabSpec("1").setIndicator("Sign Up");
    TabSpec tab3 = tabhost.newTabSpec("2").setIndicator("Tab3");



    System.out.print("second out");




    tabhost.addTab(tab1, myFragment.class, null);
    tabhost.addTab(tab2, myFragment2.class, null);
    tabhost.addTab(tab3, myFragment3.class, null);

person amjad    schedule 30.08.2013    source источник
comment
stackoverflow.com/ вопросов/4756447/ см. это и это stackoverflow.com/a/4756506/826657   -  person Rachit Mishra    schedule 30.08.2013


Ответы (1)


Вы можете добавить чертежи из ресурсов в файл TabSpec. Вот как:

Resources res = getResources(); // Resource object to get Drawables  
TabHost tabHost = getTabHost();  
TabHost.TabSpec spec;  // Resusable TabSpec for each tab

// Initialize a TabSpec for each tab and add it to the TabHost
spec = tabHost.newTabSpec("1").setIndicator(res.getString(R.string.tabname1), 
                                            res.getDrawable(R.drawable.tabimage1));
tabHost.addTab(spec, FragmentOne.class, null);

spec = tabHost.newTabSpec("2").setIndicator(res.getString(R.string.tabname2), 
                                            res.getDrawable(R.drawable.tabimage2));
tabHost.addTab(spec, FragmentTwo.class, null);

spec = tabHost.newTabSpec("3").setIndicator(res.getString(R.string.tabname3), 
                                            res.getDrawable(R.drawable.tabimage3));
tabHost.addTab(spec, FragmentThree.class, null);

//... and so on ...

Полное руководство смотрите здесь:

http://maxalley.wordpress.com/2013/05/18/android-creating-a-tab-layout-with-fragmenttabhost-and-fragments/

person Philipp Jahoda    schedule 30.08.2013
comment
Я думаю, что эти методы поддерживаются с помощью традиционного виджета вкладок, а не с android.support.v4.app.fragmenttabhost. Я пробовал, но он не работает - person amjad; 30.08.2013
comment
Это действительно должно работать, см. ссылку на учебник, которую я разместил. Они используют поддержку Fragmenttabhost. - person Philipp Jahoda; 30.08.2013
comment
да, чувак, я думаю, это должно работать, но мое изображение не получается из рисунков, если бы ты мог это видеть! - person amjad; 30.08.2013
comment
В какую папку вы положили свои изображения? - person Philipp Jahoda; 30.08.2013
comment
чертежи... во всех чертежах, которые существуют в пакете. - person amjad; 30.08.2013