2 lazyyoun LazyYoun 于 2016.04.15 19:15 提问

使用viewpager,fragment底栏导航,新的fragment替换旧的fragment 1C

主activity
public class MyActivity extends FragmentActivity {

private ViewPager mViewPager;
private IconTabPageIndicator mIndicator;
List<BaseFragment> fragments;
Button LoginButton;
LayoutInflater inflater;

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    Bmob.initialize(this, "d77a8e1ebfd8e187cbc814145918626d");
    //requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.activity_my);

    mViewPager = (ViewPager) findViewById(R.id.view_pager);
    mIndicator = (IconTabPageIndicator) findViewById(R.id.indicator);
    fragments =new ArrayList<BaseFragment>();

    BaseFragment planFragment = new BaseFragment();
    planFragment.setTitle("计划");
    planFragment.setIconId(R.drawable.tab_plan_selector);


    //BaseFragment writeFragment = new BaseFragment();
    Fragment01 writeFragment=new Fragment01();
    writeFragment.setTitle("记账");
    writeFragment.setIconId(R.drawable.tab_write_selector);


    Fragment02 recordFragment = new Fragment02();
    recordFragment.setTitle("账单");
    recordFragment.setIconId(R.drawable.tab_record_selector);


    Fragment03 userFragment = new Fragment03();
    userFragment.setTitle("用户");
    userFragment.setIconId(R.drawable.tab_user_selector);

    fragments.add(writeFragment);
    fragments.add(planFragment);
    fragments.add(recordFragment);
    fragments.add(userFragment);

    FragmentAdapter adapter = new FragmentAdapter(fragments,getSupportFragmentManager());

    mViewPager.setAdapter(adapter);
    mIndicator.setViewPager(mViewPager);
}


**fragment03.java**
fragment03中有一个button,下面是onclick消息,在点击按钮是怎样把fragment03加载成新的fragment???
class MyButton implements View.OnClickListener {
    public void onClick(View v){
        edit_username = (EditText)view.findViewById(R.id.userNameText) ;
        edit_password = (EditText)view.findViewById(R.id.passwdText) ;
        string_username = edit_username.getText().toString();//登录账号
        string_password = edit_password.getText().toString();//登录密码

                    //云验证
        BmobQuery<login> bmobQuery= new BmobQuery<login>();;
        bmobQuery.addWhereEqualTo("username",string_username);
        bmobQuery.addWhereEqualTo("password",string_password);

        bmobQuery.findObjects(getActivity(), new FindListener<login>() {
            @Override
            public void onSuccess(List<login> list) {
                for (login gameScore : list) {
                    //获得playerName的信息
                    gameScore.getUsername();
                    gameScore.getPassword();
                    //Toast.makeText(getActivity(),gameScore.getUsername()+gameScore.getPassword(), Toast.LENGTH_SHORT).show();
                   //切换fragment   出错???
                    Fragment newFragment = new Fragment01();
                    FragmentTransaction transaction =getFragmentManager().beginTransaction();
                    transaction.replace(R.id.view_pager,newFragment);
                    transaction.commit();
                }

            }
            public void onError(int i, String s) {
               Toast.makeText(getActivity(), "登录失败 ", Toast.LENGTH_SHORT).show();
                //Log.v("test","登录失败");
            }
        });


    }
}


    用viewpager加fragment实现了底栏切换fragment,在某个fragment怎样重新加载fragment,某个fragment是登录功能,登录成功要加载用户信息,也就是新的fragment。怎么实现?在onCreateView中?


    ![图片说明](https://img-ask.csdn.net/upload/201604/15/1460718920_546782.png)

3个回答

Wei_Smile
Wei_Smile   2016.04.15 22:17

使用FragmentManager,具体的话看这篇文章http://blog.csdn.net/lmj623565791/article/details/37970961
讲的非常的详细

CSDNXIAON
CSDNXIAON   2016.04.19 21:02

使用TabHost+Fragment实现导航
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

dongfeng9ge
dongfeng9ge   Ds   Rxr 2016.04.30 17:38

尽量用hide而不是replace

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
Fragment和ViewPager实现底部导航栏
前几天准备写一个小程序,一直认为fragment实现底部导航栏,是很容易的事情,可是却遇到了前所未有的问题,先给大家贴出来我出错的界面布局代码: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools"
Fragment+ViewPage一步步实现底部导航栏。
首先说下这个demo的结构吧! 1 . 用到了Fragment+ViewPager 2 . 底部用了单选按钮实现的。 再来看下代码的具体实现: 1.新建一个project的,名字自己随意。 2.编写activity_main.xml &amp;lt;LinearLayout xmlns:android=&quot;http://schemas.android.com/apk/res/andro...
ViewPager+RadioGroup+Fragment仿微信实现底部导航功能
ViewPager+RadioGroup+Fragment仿微信实现底部导航功能                   今天做一个简单的仿微信底部导航功能,先简单说明一下组件,主体是一个FrameLayout,在这个帧布局上添加两个控件,ViewPager 和RadioGroup, 然后在ViePager中添加Fragment,实现导航功能.                      
使用ViewPager和Fragment实现底部导航滑动重构版
感谢刘大神写的项目,参考自点击这里,本文对其进行了简单重构,写下思路,供自己以后思考。自定义view设置每个页面的子itemlayout_tab_item.xml,每个item由一个ImageView和一个TextView组成<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.and
底部导航BottomNavigationView+ViewPager+Fragment
Android端采用底部导航栏的APP非常多,比如微信、微博、支付宝...等等,这也不能说是盲目学习iOS,毕竟好东西大家都可以用,各家操作系统也都在博采众长,互相学习。Android端的底部导航栏有着一套规范, 详情 。 这篇文章为大家带来 1.官方BottomNavigationView的使用方法 2.结合ViewPager、Fragment实现一个流行UI布局! 3.
Android ViewPager和Fragment实现顶部导航界面滑动效果、标签下的tab位置
在项目中,我们常常需要实现界面滑动切换的效果。例如,微信界面的左右滑动切换效果。那这种效果是怎么实现的?今天我就带大家简单了解ViewPager,并通过实例来实现该效果。 一. ViewPager 官方API 首先我们来看一下ViewPager官方给出的解释,如图: 具体意思如下: Layout 管理器允许用户可以在页面上,左右滑动来翻动页面。你可以考虑实现Pa
TabLayout+ViewPager+Fragment实现顶部或底部导航栏
以前看慕课网的教程,写过一个微信Tab选项卡切换的例子,使用的是ViewPager+Fragment来实现的,说实话,当时为了实现一些效果,还是写了蛮多的代码,但是,今天介绍的TabLayout+ViewPager+Fragment实现导航栏可以使用很少的代码实现很棒的效果。
首页-底部&顶部Tab导航(菜单栏)的实现:TabLayout+ViewPager+Fragment
前言Android开发中使用顶部 & 底部Tab导航栏的频次非常高,主要的实现手段有以下: TabWidget 隐藏TabWidget,使用RadioGroup和RadioButton FragmentTabHost 5.0以后的TabLayout 最近推出的 Bottom navigation 在上一篇我介绍了如何使用(Fragment+FragmentTabHost++ViewPager) 实
Android个人学习笔记-底部导航切换Fragment的实现
前言:虽然经常来CSDN,但是打开自己的博客一看,竟然已经有一年没有更新了,今年刚刚考上计算机研究生,生活也算是一个新的开始,但是作为一个程序员,这可不是一个正常频率,所以接下来的时间还是要保持一定的更新,也算是督促自己继续学习。这篇文章是采用markdown编写的,刚使用没多久,排版不好,敬请谅解。本文主要针对初学者,大牛们请忽略,因为我也是初学者(好几年了还在原地踏步啊!!!)废话太多,下面全是
自定义ViewPagerIndicator---炫酷的导航栏指示器+ViewPager+Fragment
本人博客:自定义ViewPagerIndicator---炫酷的导航栏指示器+ViewPager+Fragment的demo