在activity_main_layout里添加FragmentTabHost

android.support.v4.app.FragmentTabHost的id必须是:@android:id/tabhost

<?xml version="1.0" encoding="utf-8"?>                                                

MainActivity.java

public class MainActivity extends AppCompatActivity implements TabHost.OnTabChangeListener {    private FragmentTabHost mTabHost;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        mTabHost = (FragmentTabHost) findViewById(android.R.id.tabhost);        mTabHost.setup(this, getSupportFragmentManager(), R.id.activity_main_real_tab_content);        mTabHost.getTabWidget().setDividerDrawable(null);        mTabHost.setOnTabChangedListener(this);        initTab();    }    private void initTab() {        String[] tabs = TabDb.getTabsTxt();        Class[] clz = TabDb.getFragment();        for (int i = 0; i < tabs.length; i++) {            TabHost.TabSpec spec = mTabHost.newTabSpec(tabs[i]).setIndicator(getView(i));            mTabHost.addTab(spec, clz[i], null);            mTabHost.setTag(i);        }    }    private View getView(int i) {        View view = LayoutInflater.from(this).inflate(R.layout.footer_tabs, null);        TextView textView = (TextView) view.findViewById(R.id.footer_tabs_text_view);        textView.setText(TabDb.getTabsTxt()[i]);        if (i == 0) {            textView.setTextColor(getResources().getColor(R.color.main_green));            ((ImageView) view.findViewById(R.id.footer_tabs_image_view)).setImageResource(                    TabDb.getTabImgLight()[i]            );        } else {            ((ImageView) view.findViewById(R.id.footer_tabs_image_view)).setImageResource(                    TabDb.getTabImg()[i]            );        }        return view;    }    @Override    public void onTabChanged(String s) {        updateTab();    }    private void updateTab() {        TabWidget tabw = mTabHost.getTabWidget();        for (int i = 0; i < tabw.getChildCount(); i++) {            View view = tabw.getChildAt(i);            ImageView iconIv = (ImageView) view.findViewById(R.id.footer_tabs_image_view);            TextView tipTv = (TextView) view.findViewById(R.id.footer_tabs_text_view);            if (i == mTabHost.getCurrentTab()) {                iconIv.setImageResource(TabDb.getTabImgLight()[i]);                tipTv.setTextColor(getResources().getColor(R.color.main_green));            } else {                iconIv.setImageResource(TabDb.getTabImg()[i]);                tipTv.setTextColor(getResources().getColor(R.color.foot_text_gray));            }        }    }}

更多相关文章

  1. retrofit2持久化保存cookie
  2. android GridView的应用举例
  3. 在Android工程中,添加ICON资源
  4. android 空调遥控器——简单发送内容
  5. 在已有的Android(安卓)签名基础上添加地图key的方式
  6. Android学习―7种形式的Android(安卓)Dialog使用举例
  7. Android电子牌外接USB读卡器读取内容模拟键盘事件
  8. Android(安卓):为你的启动页面SplashActivity 添加动画的几种方法
  9. 【Android(安卓)Training - 03】使用Fragments建立动态的UI [ Le

随机推荐

  1. Android(安卓)组件化开发ButterKnife配置
  2. Flutter 和 Android(安卓)互相传递数据的
  3. Failed to find provider info for com.e
  4. 如何在Android上使用opencv
  5. Android(安卓)服务端将位置信息发送给客
  6. Android实现城市选择三级联动
  7. Android(安卓)studio使用git教程
  8. Android(java)学习笔记38:Android(安卓)短信
  9. android 游戏 动画
  10. android sdcard的研究