閲覧ありがとうございます。
タブの文字列を変更したいのですが変更できず困っています。
Settingという表記のタブの名前を「その他」に変えたいです。
方法としては
1.PagerAdapterクラスに設定されているPageTitleを変える
2.SlidingTabLayout内のsetText部分を変える
の2通りの方法があると思うのですがどちらもコードの書き方がググっても分かりませんでした。
すみませんがよろしくお願い致します。
SlidingTabLayout
Java
1 private void populateTabStrip() { 2 final PagerAdapter adapter = mViewPager.getAdapter(); 3 final OnClickListener tabClickListener = new TabClickListener(); 4 5 for (int i = 0; i < adapter.getCount(); i++) { 6 View tabView = null; 7 TextView tabTitleView = null; 8 9 if (mTabViewLayoutId != 0) { 10 // If there is a custom tab view layout id set, try and inflate 11 // it 12 tabView = LayoutInflater.from(getContext()).inflate( 13 mTabViewLayoutId, mTabStrip, false); 14 tabTitleView = (TextView) tabView 15 .findViewById(mTabViewTextViewId); 16 } 17 if (tabView == null) { 18 tabView = createDefaultTabView(getContext()); 19 } 20 21 if (tabTitleView == null && TextView.class.isInstance(tabView)) { 22 tabTitleView = (TextView) tabView; 23 } 24 if (mDistributeEvenly) { 25 LinearLayout.LayoutParams lp = (LinearLayout.LayoutParams) tabView 26 .getLayoutParams(); 27 lp.width = 0; 28 lp.weight = 1; 29 } 30 tabTitleView.setText(adapter.getPageTitle(i)); 31 tabTitleView.setTextColor(Color.WHITE); 32 tabView.setOnClickListener(tabClickListener); 33 String desc = mContentDescriptions.get(i, null); 34 if (desc != null) { 35 tabView.setContentDescription(desc); 36 } 37 38 mTabStrip.addView(tabView); 39 if (i == mViewPager.getCurrentItem()) { 40 tabView.setSelected(true); 41 } 42 } 43 }
ViewPajerAdapter.java
Java
1public class ViewPagerAdapter extends FragmentPagerAdapter { 2 3 final int PAGE_COUNT = 4; 4 private String titles[]; 5 6 public ViewPagerAdapter(FragmentManager fm, String[] titles2) { 7 super(fm); 8 titles = titles2; 9 } 10 11 @Override 12 public Fragment getItem(int position) { 13 switch (position) { 14 case 0: 15 return MessagesFragment.newInstance(position); 16 case 1: 17 return GroupFragment.newInstance(position); 18 case 2: 19 return OnlineFragment.newInstance(position); 20 case 3: 21 return SettingsFragment.newInstance(position); 22 23 } 24 return null; 25 } 26 27 28 public CharSequence getPageTitle(int position) { 29 return titles[position]; 30 } 31 32 @Override 33 public int getCount() { 34 return PAGE_COUNT; 35 } 36 37}
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/07/27 12:38
2015/07/28 03:00
2015/07/31 04:50