zoukankan      html  css  js  c++  java
  • 1月31日 Fragment四种跳转方式

    Fragment四种跳转方式

    从同一个Activiy的一个Fragment跳转到另外一个Fragment
    从一个Activity的Fragment跳转到另外一个Activity
    从一个Activity跳转到另外一个Activity的Fragment上
    从一个Activity的Fragment跳转到另外一个Activity的Fragment上
    从同一个Activiy的一个Fragment跳转到另外一个Fragment
    getActivity().getSupportFragmentManager()
    .beginTransaction()
    .replace(R.id.xx, new XxxFragment(), null)
    .addToBackStack(null)
    .commit();
    说明:
    R.id.xx:Fragment对应的Activity布局中FragmentLayout的id
    new XxxFragment():要跳转到的Fragment
    addToBackStack(null):可以省略不写(不写表示为非压栈式添加)

    从一个Activity的Fragment跳转到另外一个Activity
    Intent intent = new Intent(getActivity(),OtherActivity.class);
    startActivity(intent);
     

    从一个Activity跳转到另外一个Activity的Fragment上
    从OtherActivity跳转到MainActivity的YourFragment

    Intent intent = new Intent(OtherActivity.this, MainActivity.class);
    intent.putExtra("id",1);
    startActivity(intent);
    然后,我们在MainActivity里接收id值,对值进行判断,如果正确进行跳转操作:

    int id = getIntent().getIntExtra("id", 0);
    if (id == 1) {
    getSupportFragmentManager()
    .beginTransaction()
    .replace(R.id.fragment_container,new YourFragment())
    .addToBackStack(null)
    .commit();
    }
    从一个Activity的Fragment跳转到另外一个Activity的Fragment上
    Intent intent = new Intent(OtherActivity.this, MainActivity.class);

    书写在对应的Fragment中,将OtherActivity.this更改为getActivity(),其他不用改变,几个完成跳转。

  • 相关阅读:
    Docker 基础 : 数据管理
    linux sudo 命令
    TeamCity : .NET Core 插件
    C# 文件下载之断点续传
    TeamCity : 配置 Build 过程
    TeamCity : Build 版本控制系统配置
    Git : SSH 协议服务器
    TeamCity : Build 基本配置
    C# 文件下载 : WinINet
    [翻译] TSMessages
  • 原文地址:https://www.cnblogs.com/dty602511/p/14859645.html
Copyright © 2011-2022 走看看