frangment 展示 隐藏 切换
来源:互联网 发布:java小项目开发 编辑:程序博客网 时间:2024/06/09 17:51
package com.example.day2franmentdeshowhehide;import android.support.annotation.IdRes;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.os.Bundle;import android.view.View;import android.widget.RadioGroup;import com.example.day2franmentdeshowhehide.Frang.Frang1;import com.example.day2franmentdeshowhehide.Frang.Frang2;import com.example.day2franmentdeshowhehide.Frang.Frang3;import java.util.ArrayList;import java.util.List;public class MainActivity extends AppCompatActivity { private FragmentManager supportFragmentManager; private FragmentTransaction fragmentTransaction; private List<Fragment> list = new ArrayList<Fragment>(); private RadioGroup rg; private Frang1 f1; private Frang2 f2; private Frang3 f3; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //获取控件 rg = (RadioGroup) findViewById(R.id.rg); //获取管理者 supportFragmentManager = getSupportFragmentManager(); //开启事务 fragmentTransaction = supportFragmentManager.beginTransaction(); //实例化碎片 f1 = new Frang1(); //默认一个页面 fragmentTransaction.add(R.id.fl, f1).commit(); //获取点击事件 rg.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { @Override public void onCheckedChanged(RadioGroup radioGroup, @IdRes int i) { //隐藏所用的Frangment hideFrag(); //在获取一个开启事务 FragmentTransaction fragmentTransaction = supportFragmentManager.beginTransaction(); switch (i) { case R.id.bu: fragmentTransaction.show(f1).commit(); break; case R.id.bu1: //如果等于空 if (f2 == null) { f2 = new Frang2();//实例化一个Frang2 fragmentTransaction.add(R.id.fl, f2).commit();//添加布局里 } else { fragmentTransaction.show(f2).commit();//有的话就show } break; case R.id.bu2: if (f3 == null) { f3 = new Frang3(); fragmentTransaction.add(R.id.fl, f3).commit(); } else { fragmentTransaction.show(f3).commit(); } break; } } }); } //隐藏所用的Frangment private void hideFrag() { //在获取一个开启事务 FragmentTransaction fragmentTransaction = supportFragmentManager.beginTransaction(); //不等于空或者是否添加 if (f1 != null && f1.isAdded()) { fragmentTransaction.hide(f1);//隐藏 } //不等于空或者是否添加 if (f2 != null && f2.isAdded()) { fragmentTransaction.hide(f2);//隐藏 } if (f3 != null && f3.isAdded()) { fragmentTransaction.hide(f3); } fragmentTransaction.commit(); }}
阅读全文
0 0
- frangment 展示 隐藏 切换
- 2frangment 切换变颜色
- 图片切换展示效果
- display的展示和隐藏
- JavaScript 图片切换展示效果
- 图片展示(手动左右切换)
- eclipse工程展示方式切换
- JQuery 显示隐藏切换
- 显示/隐藏密码切换
- toggle()切换显示隐藏
- easyui layout 切换隐藏
- Fragment切换 隐藏 显示
- 对Frangment的理解
- Frangment-学习总结
- android-Frangment应用
- Frangment+动画+listview
- ViewPager和Frangment
- pulltorefresh_listView frangment代码
- Webview 用法
- POI设置excel格式为文本格式
- Unity-协同程序
- JavaScript的复习心得
- Spring框架之基础类—ChildBeanDefinition实现类
- frangment 展示 隐藏 切换
- MongoDB快速学习
- QprogressBar 和 QSlider 样式设置
- 异常处理
- 《魂斗罗归来》之状态模式VS策略模式
- .clang-format
- 文章标题
- 作业2:用Verilog语言实现二十进制计数器
- unity的public在属性面板修改的实时性