package com.wajin.wajinlivingarea.ui;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.support.v7.app.AppCompatActivity;
import android.view.KeyEvent;
import android.widget.FrameLayout;
import android.widget.RadioGroup;
import com.wajin.wajinlivingarea.R;
public class MainActivity extends AppCompatActivity {
private FrameLayout frameLayout;
private RadioGroup radioGroup;
private Fragment[] mFragments;
private int mIndex;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initFragment();
setRadioGroupListener();
}
private void initFragment() {
radioGroup = (RadioGroup) findViewById(R.id.radioGroup);
frameLayout = (FrameLayout) findViewById(R.id.fl_content);
HomeFragment homeFragment = new HomeFragment();
ShopFragment shopFragment = new ShopFragment();
LiveFragment liveFragment = new LiveFragment();
ShoppingCarFragment shoppingCarFragment = new ShoppingCarFragment();
MineFragment mineFragment = new MineFragment();
//添加到数组
mFragments = new Fragment[]{homeFragment, shopFragment, liveFragment, shoppingCarFragment, mineFragment};
//开启事务
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
//添加首页
ft.add(R.id.fl_content, homeFragment).commit();
//默认设置为第0个
setIndexSelected(0);
}
private void setIndexSelected(int index) {
if (mIndex == index) {
return;
}
FragmentManager fragmentManager = getSupportFragmentManager();
FragmentTransaction ft = fragmentManager.beginTransaction();
//隐藏
ft.hide(mFragments[mIndex]);
//判断是否添加
if (!mFragments[index].isAdded()) {
ft.add(R.id.fl_content, mFragments[index]).show(mFragments[index]);
} else {
ft.show(mFragments[index]);
}
ft.commit();
//再次赋值
mIndex = index;
}
private void setRadioGroupListener() {
radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup radioGroup, int i) {
switch (i) {
case R.id.rb_home:
setIndexSelected(0);
break;
case R.id.rb_shop:
setIndexSelected(1);
break;
case R.id.rb_live:
setIndexSelected(2);
break;
case R.id.rb_shopping_car:
setIndexSelected(3);
break;
case R.id.rb_mine:
setIndexSelected(4);
break;
default:
setIndexSelected(0);
break;
}
}
});
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
//仅当activity为task根(即首个启动activity)时才生效,这个方法不会改变task中的activity状态,
// 按下返回键的作用跟按下HOME效果一样;重新点击应用还是回到应用退出前的状态;
moveTaskToBack(false);
return true;
}
return super.onKeyDown(keyCode, event);
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
Android 底部菜单栏(RadioGroup+Fragment)美化 (100个子文件)
gradlew.bat 2KB
fileSnapshots.bin 3.15MB
fileHashes.bin 279KB
taskArtifacts.bin 141KB
fileSnapshotsToTreeSnapshotsIndex.bin 29KB
localClassSetAnalysis.bin 29KB
localJarClasspathSnapshot.bin 20KB
.gitignore 127B
.gitignore 8B
build.gradle 909B
build.gradle 521B
settings.gradle 16B
gradlew 5KB
app.iml 13KB
WajinLivingArea.iml 869B
bottomMenu.iml 864B
gradle-wrapper.jar 52KB
MainActivity.java 4KB
ExampleInstrumentedTest.java 780B
ShoppingCarFragment.java 555B
ShopFragment.java 536B
HomeFragment.java 534B
MineFragment.java 534B
LiveFragment.java 530B
BaseFragment.java 444B
ExampleUnitTest.java 419B
localJarClasspathSnapshot.lock 17B
localClassSetAnalysis.lock 17B
cache.properties.lock 17B
ic_launcher.png 10KB
ic_launcher.png 8KB
ic_launcher.png 5KB
btn_mine_normal.png 4KB
btn_mine_pressed.png 4KB
btn_home_normal.png 4KB
btn_shop_normal.png 3KB
btn_shop_pressed.png 3KB
ic_launcher.png 3KB
btn_shopping_car_normal.png 3KB
btn_shopping_car_pressed.png 3KB
btn_home_pressed.png 3KB
btn_live_normal.png 3KB
btn_live_pressed.png 3KB
ic_launcher.png 2KB
proguard-rules.pro 677B
gradle.properties 747B
local.properties 444B
gradle-wrapper.properties 233B
cache.properties 31B
workspace.xml 164KB
misc.xml 2KB
activity_main.xml 2KB
styles.xml 962B
exposed_instrumentation_api_publish_0_5.xml 729B
espresso_idling_resource_2_2_2.xml 711B
animated_vector_drawable_26_0_0_alpha1.xml 709B
support_vector_drawable_26_0_0_alpha1.xml 704B
gradle.xml 703B
support_media_compat_26_0_0_alpha1.xml 689B
AndroidManifest.xml 687B
compiler.xml 686B
support_core_utils_26_0_0_alpha1.xml 679B
support_fragment_26_0_0_alpha1.xml 669B
Project_Default.xml 669B
support_core_ui_26_0_0_alpha1.xml 664B
support_compat_26_0_0_alpha1.xml 659B
espresso_core_2_2_2.xml 656B
appcompat_v7_26_0_0_alpha1.xml 649B
support_v4_26_0_0_alpha1.xml 639B
support_annotations_26_0_0_alpha1.xml 588B
runner_0_5.xml 584B
rules_0_5.xml 579B
runConfigurations.xml 564B
hamcrest_core_1_3.xml 526B
junit_4_12.xml 477B
fragment_home.xml 449B
attrs.xml 426B
fragment_shoping_car.xml 414B
fragment_live.xml 414B
fragment_shop.xml 410B
fragment_mine.xml 407B
dimens.xml 364B
javax_annotation_api_1_2.xml 358B
modules.xml 357B
hamcrest_integration_1_3.xml 354B
hamcrest_library_1_3.xml 342B
jsr305_2_0_1.xml 330B
javawriter_2_1_1.xml 330B
javax_inject_1.xml 324B
btn_shopping_car.xml 314B
strings.xml 306B
dimens.xml 301B
btn_home.xml 300B
btn_mine.xml 298B
btn_shop.xml 296B
btn_live.xml 296B
color_radiobutton.xml 278B
colors.xml 268B
profiles_settings.xml 241B
profiles_settings.xml 76B
共 100 条
- 1
资源评论
brainbgm
- 粉丝: 36
- 资源: 18
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功