简体   繁体   中英

set different title bar to collapsingToolbarLayout

i have one activity that handle on multiple list fragment, once i clicked the item, i wish the result have a different title on the appbarr . Here's my code, it's work for me, but i hope i can make it simple and easy to read. would you guys help me out.

//set title/label activity for toolbar
    CollapsingToolbarLayout collapsingToolbarLayout1;
    collapsingToolbarLayout1 = (CollapsingToolbarLayout) findViewById(R.id.collapsing_tollbar);
    CollapsingToolbarLayout collapsingToolbarLayout2;
    collapsingToolbarLayout2 = (CollapsingToolbarLayout) findViewById(R.id.collapsing_tollbar);
    CollapsingToolbarLayout collapsingToolbarLayout3;
    collapsingToolbarLayout3 = (CollapsingToolbarLayout) findViewById(R.id.collapsing_tollbar);
    CollapsingToolbarLayout collapsingToolbarLayout4;
    collapsingToolbarLayout4 = (CollapsingToolbarLayout) findViewById(R.id.collapsing_tollbar);

    //set activity title
    switch (categoryid) {
        case 1:
            collapsingToolbarLayout1.setTitle(getResources().getString(R.string.category_title_1) + " " + getResources().getString(R.string.in_city_name));
            collapsingToolbarLayout1.setExpandedTitleTextAppearance(R.style.expanded_appbarr);
            collapsingToolbarLayout1.setCollapsedTitleTextAppearance(R.style.collapseAppBar);
            break;
        case 2:
            collapsingToolbarLayout2.setTitle(getResources().getString(R.string.category_title_2) + " " + getResources().getString(R.string.in_city_name));
            collapsingToolbarLayout2.setExpandedTitleTextAppearance(R.style.expanded_appbarr);
            collapsingToolbarLayout2.setCollapsedTitleTextAppearance(R.style.collapseAppBar);
            break;
        case 3:
            collapsingToolbarLayout3.setTitle(getResources().getString(R.string.category_title_3) + " " + getResources().getString(R.string.in_city_name));
            collapsingToolbarLayout3.setExpandedTitleTextAppearance(R.style.expanded_appbarr);
            collapsingToolbarLayout3.setCollapsedTitleTextAppearance(R.style.collapseAppBar);
            break;
        case 4:
            collapsingToolbarLayout4.setTitle(getResources().getString(R.string.category_title_4) + " " + getResources().getString(R.string.in_city_name));
            collapsingToolbarLayout4.setExpandedTitleTextAppearance(R.style.expanded_appbarr);
            collapsingToolbarLayout4.setCollapsedTitleTextAppearance(R.style.collapseAppBar);
            break;
    }

Just a question why are you creating multiple collapsingtoolbar layout? Just set the title on basis of condition for same collapsing toolbar

collapsingToolbarLayout1.setTitle("your title")

and if that doesn't work then try this one

collapsingToolbarLayout.setTitleEnabled(false);
toolbar.setTitle("My Title");

If you want to set title from multiple fragments then access the activity instance in fragment and then access toolbar / collapsingToolbar, then you'll be able to set title

activity/getActivity().toolbar.setTitle("your title")

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM