//布局文件用相对布局,先定义一个RadioGroup,其中放四个RadioButton。Framelayout要放在RadioGroup的上方
<LinearLayoutandroid:layout_alignParentBottom="true"android:id="@+id/RG"android:layout_width="fill_parent"android:layout_height="wrap_content"android:orientation="horizontal">
<RadioButton
android:id="@+id/rd_home"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:button="@null"android:drawableTop="@drawable/home_iv_select"android:gravity="center"android:text="首页"/>
<RadioButton
android:id="@+id/rd_vedio"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:button="@null"android:drawableTop="@drawable/void_iv_select"android:gravity="center"android:text="视频"/>
<RadioButton
android:id="@+id/rd_care"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:button="@null"android:drawableTop="@drawable/care_iv_select"android:gravity="center"android:text="关注"/>
<RadioButton
android:id="@+id/rd_nologin"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:button="@null"android:drawableTop="@drawable/login_iv_select"android:gravity="center"android:text="未登录"/>
LinearLayout>
<FrameLayout
android:id="@+id/fl"android:layout_above="@id/RG"android:layout_width="match_parent"android:layout_height="match_parent"android:layout_alignParentLeft="true"android:layout_alignParentStart="true">
FrameLayout>
//主方法实现四个按钮的切换颜色变化
public class MainActivity extendsFragmentActivity implementsView.OnClickListener {
privateSharedPreferences sp;
privateRadioButton rd_home;
privateRadioButton rd_vedio;
privateRadioButton rd_care;
privateRadioButton rd_nologin;
privateLinearLayout rg;
privateRelativeLayout activity_main;
@Overrideprotected voidonCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
rd_home= (RadioButton) findViewById(R.id.rd_home);
rd_vedio= (RadioButton) findViewById(R.id.rd_vedio);
rd_care= (RadioButton) findViewById(R.id.rd_care);
rd_nologin= (RadioButton) findViewById(R.id.rd_nologin);
rg= (LinearLayout) findViewById(R.id.RG);
initView();
PushAgent.getInstance(this).onAppStart();
}
//初始化布局public voidinitView() {
Fragment_Home home = newFragment_Home();
getSupportFragmentManager().beginTransaction().replace(R.id.fl, home).commit();
rd_home.setOnClickListener(this);
rd_home.setTextColor(Color.RED);
rd_home.setSelected(true);
rd_vedio.setOnClickListener(this);
rd_care.setOnClickListener(this);
rd_nologin.setOnClickListener(this);
}
@Overridepublic voidonClick(View v) {
switch(v.getId()) {
caseR.id.rd_home:
rd_home.setSelected(true);
rd_vedio.setSelected(false);
rd_care.setSelected(false);
rd_nologin.setSelected(false);
rd_home.setTextColor(Color.RED);
rd_vedio.setTextColor(Color.BLACK);
rd_care.setTextColor(Color.BLACK);
rd_nologin.setTextColor(Color.BLACK);
rd_home.setSelected(true);
Fragment_Home home = newFragment_Home();
getSupportFragmentManager().beginTransaction().replace(R.id.fl, home).commit();
break;
caseR.id.rd_vedio:
rd_home.setSelected(false);
rd_vedio.setSelected(true);
rd_care.setSelected(false);
rd_nologin.setSelected(false);
rd_home.setTextColor(Color.BLACK);
rd_vedio.setTextColor(Color.RED);
rd_care.setTextColor(Color.BLACK);
rd_nologin.setTextColor(Color.BLACK);
Fragment_Vedio vedio = newFragment_Vedio();
getSupportFragmentManager().beginTransaction().replace(R.id.fl, vedio).commit();
break;
caseR.id.rd_care:
rd_home.setSelected(false);
rd_vedio.setSelected(false);
rd_care.setSelected(true);
rd_nologin.setSelected(false);
rd_home.setTextColor(Color.BLACK);
rd_vedio.setTextColor(Color.BLACK);
rd_care.setTextColor(Color.RED);
rd_nologin.setTextColor(Color.BLACK);
Fragment_Care care = newFragment_Care();
getSupportFragmentManager().beginTransaction().replace(R.id.fl, care).commit();
break;
caseR.id.rd_nologin:
rd_home.setSelected(false);
rd_vedio.setSelected(false);
rd_care.setSelected(false);
rd_nologin.setSelected(true);
rd_home.setTextColor(Color.BLACK);
rd_vedio.setTextColor(Color.BLACK);
rd_care.setTextColor(Color.BLACK);
rd_nologin.setTextColor(Color.RED);
Fragment_NoLogin noLogin = newFragment_NoLogin();
getSupportFragmentManager().beginTransaction().replace(R.id.fl, noLogin).commit();
break;
}
}
}