Fragment跳转
1 先在activity上创建一个上下为LinearLayout布局,中间为一个按钮的xml。并且创建2个Fragment
1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 xmlns:tools="http://schemas.android.com/tools" 4 android:id="@+id/activity_main" 5 android:layout_width="match_parent" 6 android:layout_height="match_parent" 7 android:gravity="center" 8 android:orientation="vertical" 9 tools:context="com.example.my.myapplicationtiaozhuan.MainActivity">10 11 <LinearLayout 12 android:id="@+id/show"13 android:layout_width="match_parent"14 android:layout_height="wrap_content"15 android:gravity="center"16 android:orientation="vertical"> 17 18 </LinearLayout>19 20 <Button 21 android:id="@+id/btnshow"22 android:layout_width="wrap_content" 23 android:layout_height="wrap_content"24 android:layout_gravity="center"25 android:layout_marginTop="20dp"26 android:onClick="onClick"27 android:text="@string/btnshow" />28 29 <LinearLayout 30 android:id="@+id/txtshow2"31 android:layout_width="wrap_content"32 android:layout_height="wrap_content"33 android:layout_marginTop="100dp" 34 android:orientation="vertical"> 35 36 </LinearLayout> 37 </LinearLayout>
string文件
<resources><string name="app_name">FragmentJump</string><string name="txtshow">This is first fragment</string><string name="btnshow">Show Next Page</string><!-- TODO: Remove or change this placeholder text --><string name="hello_blank_fragment">Hello blank fragment</string><string name="show">This is in second fragment</string> </resources>
2 创建一个静态Fragment :“This is first fragment”
1 View view = inflater.inflate(R.layout.fragment_biaoti, container, false); 2 // 加载一些初始化的数据 3 TextView txtContent = (TextView) view.findViewById(R.id.biaoti_show) //通过ID获取视图内容 4 txtContent.setText(content);5 return view;67 public void setContent(String content){8 this.content = content;9 }
Fragment静态创建
FragmentManager manager = getFragmentManager(); transaction = manager.beginTransaction(); //添加一个FragmentTransaction的实例 biaotiFragment.setContent("This is first fragment"); transaction.add(R.id.show, biaotiFragment); //静态创建, 用add()方法加上Fragment的对象 transaction.commit(); //调用commit()方法使得FragmentTransaction实例的改变生效
Fragment动态创建编码
btshow.setOnClickListener(new View.OnClickListener() { //监听button事件 @Overridepublic void onClick(View view) {if (btshow.isClickable()) { //button第一次被点击事件FragmentManager manager = getFragmentManager();transaction = manager.beginTransaction();biaotiFragment = new BiaotiFragment();biaotiFragment.setContent("This is second fragment"); //调用fragment中的setContent()方法将Fragment中的标题改为This is second fragmenttransaction.replace(R.id.show, biaotiFragment);//将show线性布局替换成biaotiFragment transaction.commit();}btshow.setOnClickListener(new View.OnClickListener() { //再次监听button事件 @Overridepublic void onClick(View view) {if (btshow.isClickable()) { //button第二次被点击事件FragmentManager manager = getFragmentManager();transaction = manager.beginTransaction();contentFragment.setContent("This is in second fraqment");transaction.replace(R.id.txtshow2, contentFragment);transaction.commit();}}});}}); }private long exitTime = 0;@Override public boolean onKeyDown(int keyCode, KeyEvent event) {if (keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN) { //判断手机上退出键if ((System.currentTimeMillis() - exitTime) > 2000) { //第一次点击返回键FragmentManager manager = getFragmentManager();transaction = manager.beginTransaction();biaotiFragment = new BiaotiFragment();biaotiFragment.setContent("This is first fragment"); //调用biaotifragment中的setContent()方法 transaction.replace(R.id.show, biaotiFragment);contentFragment=new ContentFragment();contentFragment.setContent(""); //将contentFragment中的标题改为空 transaction.replace(R.id.txtshow2, contentFragment);transaction.commit();exitTime = System.currentTimeMillis();} else { //第二次点击返回键finish(); //退出System.exit(0);}return true;}return super.onKeyDown(keyCode, event); }学习于舍友丁金涛
转载于:https://www.cnblogs.com/xu2829346482/p/6730741.html
Fragment跳转相关推荐
- Android中Fragment跳转生命周期
一.Fragment跳转Fragment(replace方法) 对于replace方法,当第二个页面onCreate后,第一个页面会执行完生命周期,第二个页面才会执行完后续的生命周期函数. 二.Vie ...
- android fragment finish activity,如何从fragment跳到activity再从activity返回(finish()方法返回)刷新fragemnt页面...
代码改变世界 如何从fragment跳到activity再从activity返回(finish()方法返回)刷新fragemnt页面 广播方法实现Fragment页面刷新 fragment中重写onA ...
- Android跳转动画时长,Android_Activit跳转动画之界面上某个位置并裂开上下拉伸动画跳转,需求:Activity(fragment)跳转的时候 - phpStudy...
Activit跳转动画之界面上某个位置并裂开上下拉伸动画跳转 需求:Activity(fragment)跳转的时候当前界面裂开,上下各自拉出手机屏幕,之后跳转到相对应的Activity.整体效果图如下 ...
- Fragment 跳转到指定的Fragment 与 Activity跳转到指定的Fragment 的方法
Fragment 跳转到指定的Fragment 主要分为2中情况 1 同一个Activity上的Fragment 跳转到指定Fragment 例如MainActivity 上的Fragment 跳转问 ...
- android 界面跳转封装,【Android】Fragment跳转系列
一.同一个Activity下Fragment之间相互跳转(含带参数) Fragment1跳转到Fragment2中 1.封装一个方法 这样封装是方便一个Activity下有多个Fragment来回跳转 ...
- Fragment 跳转切换刷新
网上常用三种Fragment方法 转载:Android 每次进入Fragment都进行刷新 第一种,使用onCreateAnimation方法: private boolean isGetData=f ...
- Android Fragment跳转到Activity的方法
一开始我直接按照Activity页面之间跳转的方法进行的跳转,就是在xml文件中给相应的组件onClick android:onClick="to_search" 在网上查询到的好 ...
- Activity跳转到Fragment的方法(Intent)
提示:小美女小帅哥,点个赞点个关注,不秃头 文章目录 Intent踩坑 一.intent跳转编译错误? 二.问题原因 activity不能直接用Intent跳转fragment,因此要用个例外的办法处 ...
- Fragment 之间传递数据
关于Fragment 之间的跳转这里就不再说了 有兴趣的可以看我的这边博客 Fragment 跳转 ,,,点击查看把 Fragment 跳转首先先跳转到宿主的Activity 上 这里以在同一个Act ...
- 在Fragment中实现百度地图,定位到当前位置(基于SDKv2.1.0)
使用最新版本的百度地图需要注意的几个地方: 1.libs文件夹下要有android-support-v4.jar.baidumapapi_v2_1_0.jar.locSDK_3.1.jar三个jar包 ...
最新文章
- [转]关于正则表达式 g,m 参数的总结,为了回答“正则表达式(/[^0-9]/g,'')中的/g是什么意思?”...
- css3的动画详解 html直接可以运行
- cocos2d-x中集成protoc-gen-lua
- POJ 3281 -- Dining(最大流,拆点建图)
- PCA和线性回归之间的关系如何?
- 同样版本的jstl,都是jstl1.2版本,有个有问题,另一个没有问题
- document 对象 html文档内容
- xcode5 ios7 64位 iphone5s引用第三方库报错的解决办法
- Tomcat8 安装后点击startup出现闪退的解决方法(转)
- eclipse更改android版本,在Android Studio和Android Eclipse 更改现有项目里的SDK版本
- 散射理论对微波遥感的重要性
- 群晖 NAS 中的 Audio Station 一直不能加载 NAS 中的音乐问题的解决方法及自定义音乐库文件夹方法.md
- SpMV矩阵格式自动调优
- r语言mfrow全程_R语言(绘图入门)
- LWIP源码分析——ip4.c
- 如何从产品层面做需求分析——产品定位
- 作业调度算法【平均周转时间、平均带权周转时间、先来先服务FCFS、短作业优先SJF、高优先权(级)算法FPF、高响应比优先算法HRRN】
- gt,gte,lt,lte缩写代表的意思
- 串行器 MAX96717F 芯片介绍
- 三天入门Python---基本语法(第一天)
热门文章
- RIM任松伟:黑莓引领企业移动化主题演讲
- idea2018 2020_2019~2020上海沪牌价格一览表
- STM32配合火焰传感器的火灾报警
- 七位高僧大德的临终开示,非大福报者不得见
- 两款C#开源单文件串口调试工具的源码库
- 产业“上链”至深处,京东云如何作为?
- 东海学计算机,田东海_北京理工大学计算机学院
- win10计算机恢复到一天前,win10怎么系统还原到某一时刻 win10系统还原之后会怎么样...
- CNCC 2018参会回顾、总结
- 网络传输中的那些编码之-chr和hex(base16)