package com.example.ghost.text1; import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentActivity; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentTransaction; import android.view.View; import android.view.Window; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.TextView; /** * Created by GHOST on 2017/1/28. * Fragment */ public class tabActivity extends FragmentActivity implements View.OnClickListener { // 四个tab布局 private LinearLayout takeOutLayout, expressLayout, personLayout, nearbyLayout; // 底部标签切换的Fragment private Fragment takeOutFragment, expressFragment, personFragment, nearbyFragment; // 底部标签图片 private ImageView takeOutImg, expressImg, nearbyImg, personImg; private TextView takeoutTv, expressTv, nearbyTv, presonTv; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.main_menu); initView(); initEvent(); setSelect(0); } private void initEvent() { takeOutLayout.setOnClickListener(this); expressLayout.setOnClickListener(this); nearbyLayout.setOnClickListener(this); personLayout.setOnClickListener(this); } private void initView() { takeOutLayout = (LinearLayout) findViewById(R.id.id_tab_takeout); expressLayout = (LinearLayout) findViewById(R.id.id_tab_express); nearbyLayout = (LinearLayout) findViewById(R.id.id_tab_nearby); personLayout = (LinearLayout) findViewById(R.id.id_tab_person); takeOutImg = (ImageView) findViewById(R.id.id_tab_takeout_img); expressImg = (ImageView) findViewById(R.id.id_tab_express_img); nearbyImg = (ImageView) findViewById(R.id.id_tab_nearby_img); personImg = (ImageView) findViewById(R.id.id_tab_person_img); } private void setSelect(int i) { FragmentManager fm = getSupportFragmentManager(); FragmentTransaction transaction = fm.beginTransaction(); hideFragment(transaction); // 把图片设置为亮的 // 设置内容区域 switch (i) { case 0: if (takeOutFragment == null) { takeOutFragment = new tab1_fragment(); transaction.add(R.id.id_content, takeOutFragment); } else { transaction.show(takeOutFragment); } takeOutImg.setImageResource(R.drawable.tab_1); break; case 1: if (expressFragment == null) { expressFragment = new tab2_fragment(); transaction.add(R.id.id_content, expressFragment); } else { transaction.show(expressFragment); } expressImg.setImageResource(R.drawable.tab_2); break; case 2: if (nearbyFragment == null) { nearbyFragment = new tab3_fragment(); transaction.add(R.id.id_content, nearbyFragment); } else { transaction.show(nearbyFragment); } nearbyImg.setImageResource(R.drawable.tab_3); break; case 3: if (personFragment == null) { personFragment = new tab4_fragment(); transaction.add(R.id.id_content, personFragment); } else { transaction.show(personFragment); } personImg.setImageResource(R.drawable.tab_4); break; default: break; } transaction.commit(); } private void hideFragment(FragmentTransaction transaction) { if (takeOutFragment != null) { transaction.hide(takeOutFragment); } if (expressFragment != null) { transaction.hide(expressFragment); } if (nearbyFragment != null) { transaction.hide(nearbyFragment); } if (personFragment != null) { transaction.hide(personFragment); } } @Override public void onClick(View v) { resetImgs(); switch (v.getId()) { case R.id.id_tab_takeout: setSelect(0); break; case R.id.id_tab_express: setSelect(1); break; case R.id.id_tab_nearby: setSelect(2); break; case R.id.id_tab_person: setSelect(3); break; default: break; } } private void resetImgs() { takeOutImg.setImageResource(R.drawable.tab_1_1); expressImg.setImageResource(R.drawable.tab_2_2); nearbyImg.setImageResource(R.drawable.tab_3_3); personImg.setImageResource(R.drawable.tab_4_4); } }
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <TextView android:layout_width="fill_parent" android:layout_height="fill_parent" android:gravity="center" android:text="This is a Tab" android:textSize="30sp" android:textStyle="bold" /> </LinearLayout>
package com.example.ghost.text1; import android.os.Bundle; import android.support.v4.app.Fragment; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; public class tab1_fragment extends Fragment { public View onCreate(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { return inflater.inflate(R.layout.tab01, container, false); } }
爱3
ziom
相关分类