Frafment 的show和hide
来源:互联网 发布:microsoft办公软件 编辑:程序博客网 时间:2024/05/16 10:28
import android.os.Bundle;
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.v4.widget.DrawerLayout;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.FrameLayout;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.RadioGroup;
import android.widget.Toast;
import com.example.a09jieyuekaolianxi.Fragment.BlankFragment01;
import com.example.a09jieyuekaolianxi.Fragment.BlankFragment02;
import com.example.a09jieyuekaolianxi.Fragment.BlankFragment03;
import com.example.a09jieyuekaolianxi.Fragment.BlankFragment04;
import com.example.a09jieyuekaolianxi.Tools.JudgeNetWorkInfo;
import java.util.ArrayList;
/**
* 和MainActivity逻辑一样
* 简单处理,底部标签切换;
* 使用某个Fragment的时候再new出来;
*/
public class MainActivity2 extends AppCompatActivity {
private DrawerLayout drawerLayout;
private FrameLayout frameLayout;
private RadioGroup group;
private LinearLayout linearLayout;
private ImageView imageView;
private FragmentManager fragmentManager;
private BlankFragment01 blankFragment01;
private BlankFragment02 blankFragment02;
private BlankFragment03 blankFragment03;
private BlankFragment04 blankFragment04;
private ArrayList<Fragment> list;
@Override
protected void onResume() {
super.onResume();
//判断网络状态
int netWorkInfo = JudgeNetWorkInfo.getNetWorkInfo(MainActivity2.this);
if (netWorkInfo == -1) {
Toast.makeText(this, "当前网络异常,请做联网操作!", Toast.LENGTH_SHORT).show();
} else if (netWorkInfo == 1) {
Toast.makeText(this, "当前网络正常,正在使用WiFi网络", Toast.LENGTH_SHORT).show();
} else if (netWorkInfo == 0) {
Toast.makeText(this, "当前网络正常,正在使用运营商网络(3G/4G),请注意流量的使用", Toast.LENGTH_SHORT).show();
}
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
fragmentManager = getSupportFragmentManager();
//初始化组件
drawerLayout = (DrawerLayout) findViewById(R.id.dl_chehua);
frameLayout = (FrameLayout) findViewById(R.id.fl_zhanwei);
group = (RadioGroup) findViewById(R.id.group);
//侧滑布局
linearLayout = (LinearLayout) findViewById(R.id.ll_chehua);
//侧滑布局中的图片
imageView = (ImageView) findViewById(R.id.jqr);
//封装数据
list = new ArrayList<>();
//点击机器人关闭侧滑
imageView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
drawerLayout.closeDrawer(linearLayout);
}
});
//将所有Fragment添加到占位布局
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
blankFragment01 = new BlankFragment01();
fragmentTransaction
.add(R.id.fl_zhanwei, blankFragment01)
.commit();
//RadioGroupd点击监听
group.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup radioGroup, @IdRes int i) {
hideFragments();//隐藏所有Fragment;
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
switch (i) {
case R.id.but1:
fragmentTransaction.show(blankFragment01).commit();
break;
case R.id.but2:
if (blankFragment02 == null) {
blankFragment02 = new BlankFragment02();
fragmentTransaction.add(R.id.fl_zhanwei, blankFragment02).commit();
} else {
fragmentTransaction.show(blankFragment02).commit();
}
break;
case R.id.but3:
if (blankFragment03 == null) {
blankFragment03 = new BlankFragment03();
fragmentTransaction.add(R.id.fl_zhanwei, blankFragment03).commit();
} else {
fragmentTransaction.show(blankFragment03).commit();
}
break;
case R.id.but4:
if (blankFragment04 == null) {
blankFragment04 = new BlankFragment04();
fragmentTransaction.add(R.id.fl_zhanwei, blankFragment04).commit();
} else {
fragmentTransaction.show(blankFragment04).commit();
}
break;
}
}
});
}
public void hideFragments() {
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
if (blankFragment01 != null && blankFragment01.isAdded()) {
fragmentTransaction.hide(blankFragment01);
}
if (blankFragment02 != null && blankFragment02.isAdded()) {
fragmentTransaction.hide(blankFragment02);
}
if (blankFragment03 != null && blankFragment03.isAdded()) {
fragmentTransaction.hide(blankFragment03);
}
if (blankFragment04 != null && blankFragment04.isAdded()) {
fragmentTransaction.hide(blankFragment04);
}
fragmentTransaction.commit();
}
}
阅读全文
0 0
- Frafment 的show和hide
- Android中Fragment的Hide和Show
- Fragment show和hide
- fragment 的repalce方法和hide和show
- hide隐藏和show显示
- android碎片的replace()和add()、hide()、show()的区别
- Android中Fragment的hide和show的一些技巧
- prototype.js中hide()和show()的一个注意事项
- 【jQuery】动画效果的show()和hide()方法
- FragmentTransition replace add show hide方法的使用和差异
- JQuery 使用.show()和.hide()做的可爱动画
- Android Fragment使用hide和show方法的问题
- ng-if、ng-show和ng-hide指令的区别
- Fragment 的hide()与show()
- Fragment的show与hide
- jQuery hide() 和 show() 隐藏和显示
- jQuery 效果 show() 和 hide()方法
- Fragment加RadioGroup show和hide
- 对象的克隆——原型模式(三)
- 在Word中添加图或表自动编号与引用功能
- HTML中的 href 和 src 的区别
- js特效 人形时钟
- poj 3009
- Frafment 的show和hide
- 初见Spring之AOP编程
- Java基础——冒号标记代码块的作用
- 图像复原与重建
- 将 Spark Streaming + Kafka direct 的 offset 保存进入Zookeeper(二)
- Vijos 雷曼兔(csapc)
- 【算法】一种用于云计算的SPSO算法
- android killer连接夜神模拟器
- 文章标题