setTitle无法正常工作的Android

肯尼·冈德曼(Kenny Gunderman)

我创建了一个滑动选项卡活动,并且试图动态更改应用程序栏的标题。但是我所做的一切似乎都行不通!这是我的MainActivity.java:

public class MainActivity extends AppCompatActivity {


ViewPager mPager;
SlidingTabLayout mTabs;

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


    getSupportActionBar().setDisplayShowHomeEnabled(true);


    mPager = (ViewPager) findViewById(R.id.pager);

    mPager.setAdapter(new MyPagerAdapter(getSupportFragmentManager()));

    mTabs = (SlidingTabLayout) findViewById(R.id.tabs);

    mTabs.setCustomTabView(R.layout.custom_tab_view, R.id.tabText);

    mTabs.setDistributeEvenly(true);

    mTabs.setSelectedIndicatorColors(getResources().getColor(R.color.colorAccent));
    mTabs.setBackgroundColor(getResources().getColor(R.color.colorPrimary));

    mTabs.setViewPager(mPager);

}

class MyPagerAdapter extends FragmentPagerAdapter {

    int tabIcons[] = {R.drawable.ic_events, R.drawable.ic_clients, R.drawable.ic_history};
    String[] tabText = getResources().getStringArray(R.array.tabs);

    public MyPagerAdapter(FragmentManager fm) {
        super(fm);
    }

    @Override
    public Fragment getItem(int position) {

        switch (position){
            case 0:
                getSupportActionBar().setTitle("Events");
                EventsFragment eventsFragment = EventsFragment.getInstance(position);
                return eventsFragment;

            case 1:
                getSupportActionBar().setTitle("Clients");
                ClientsFragment clientsFragment = ClientsFragment.getInstance(position);
                return clientsFragment;

            case 2:
                getSupportActionBar().setTitle("History");
                HistoryFragment historyFragment = HistoryFragment.getInstance(position);
                return historyFragment;

            default:
                getSupportActionBar().setTitle("Events");
                EventsFragment defaultFragment = EventsFragment.getInstance(position);
                return defaultFragment;

        }

    }

    @Override
    public CharSequence getPageTitle(int position) {

        Drawable drawable = getResources().getDrawable(tabIcons[position]);

        drawable.setBounds(0,0,64,64);

        ImageSpan imageSpan = new ImageSpan(drawable);

        SpannableString spannableString = new SpannableString(" ");

        spannableString.setSpan(imageSpan, 0, spannableString.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);

        return spannableString;
    }

    @Override
    public int getCount() {
        return 3;
    }
}

}

我还尝试onCreate使用以下方法在应用程序栏中设置标题

 getSupportActionBar().setTitle("Test");

这也不起作用。

我该如何解决?谢谢!

阿米泰橱窗之家

MainActivity对象调用setTitle方法

MainActivity内部调用setTitle(...)从另一个类(MyPagerAdapter调用activity.setTitle(...)

活动是对MainActivity对象的引用您可以使用getActivity(),它返回与片段关联的活动。

最后,使用getActivity().setTitle(...);以便从片段内设置标题。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Android ScrollView无法正常工作

来自分类Dev

Android ListView在Gingerbread上无法正常工作

来自分类Dev

Android on Onclick无法正常工作

来自分类Dev

Phonegap TTS插件Android无法正常工作

来自分类Dev

Android mkdirs()SD卡无法正常工作

来自分类Dev

Android HttpResponseCache无法正常工作

来自分类Dev

Facebook requestNewPublishPermissions Android无法正常工作

来自分类Dev

android:layout_below无法正常工作

来自分类Dev

Android Listview无法正常工作?

来自分类Dev

Android AccelerateDecelerateInterpolator无法正常工作

来自分类Dev

Android Studio中的OpenCV无法正常工作?

来自分类Dev

Android mkdirs()无法正常工作

来自分类Dev

setTitle至AppCompatDialog无法正常工作

来自分类Dev

Android weightsum无法正常工作

来自分类Dev

Android GeomagneticField无法正常工作

来自分类Dev

Android:ViewGroup.MarginLayoutParams无法正常工作

来自分类Dev

BroadcastReceiver中的Android onReceive无法正常工作

来自分类Dev

Android:Firebase ChildEventListener()无法正常工作

来自分类Dev

Android应用| MySQL日志无法正常工作

来自分类Dev

Android onConfigurationChanged无法正常工作

来自分类Dev

Android意向无法正常工作

来自分类Dev

Android TimePicker无法正常工作

来自分类Dev

httpPost无法正常工作的android

来自分类Dev

Android版式无法正常工作

来自分类Dev

android图形无法正常工作

来自分类Dev

Android setOnEditorActionListener无法正常工作

来自分类Dev

“ android:maxSdkVersion”无法正常工作

来自分类Dev

setTitle无法正常工作的Android

来自分类Dev

Android RadioGroup无法正常工作