2016-07-25 68 views

回答

0

爲onLongClickListener

View tabView= mTabHost.getTabWidget().getChildAt(i); 
// set the tag information at the view of the tab (the tag contains the position number of the tab) 
tabView.setTag(Integer.valueOf(i)); 
tabView.setOnLongClickListener(new OnLongClickListener() { 

      @Override 
      public boolean onLongClick(View v) { 
       // TODO Auto-generated method stub 
       // I print the number position of the tab 
       Log.d("tab number", ((Integer)view.getTag()).toString()); 
       return false; 
      } 
     }); 

爲重命名選項卡

((TextView)((RelativeLayout)getTabWidget().getChildAt(tabIndex)).getChildAt(textIndex)).setText("NewTabText"); 
+0

喜FRND,做這項工作_tablayout_ ... –

+0

請試一試。我希望它能夠正常工作或分享您的代碼,以便我可以嘗試妥善解決此問題。謝謝 – 2016-07-25 04:09:46

0
try like this. 

private void changeTabsText() { 

    ViewGroup vg = (ViewGroup) tabLayout.getChildAt(0); 
    int tabsCount = vg.getChildCount(); 
    for (int j = 0; j < tabsCount; j++) { 
     ViewGroup vgTab = (ViewGroup) vg.getChildAt(j); 
     int tabChildsCount = vgTab.getChildCount(); 
     for (int i = 0; i < tabChildsCount; i++) { 
      View tabViewChild = vgTab.getChildAt(i); 
      if (tabViewChild instanceof TextView) { 
       ((TextView) tabViewChild).setText("your Text"); 
      } 
     } 
    } 
}