标签: android-nested-fragment

NullPointerException LayoutInflater.from(context) - 片段Android

我已经实现了嵌套片段.子片段包含BaseAdapter.当我切换(替换)子片段时,我得到Nullpointer异常.码:

public MyAdapter(final Context context,
            final List<CusomObject> CusomObjectList) {
        mInflater = LayoutInflater.from(context);
        this.CusomObjectList = CusomObjectList;     
    }
Run Code Online (Sandbox Code Playgroud)

我在这一行得到错误 - mInflater = LayoutInflater.from(context);

我从Fragment 传递getActivity()MyAdapter构造函数.

码:

adapter = new MyAdapter(getActivity(), customList);
listView.setAdapter(adapter);
Run Code Online (Sandbox Code Playgroud)

android fragment android-fragments android-nested-fragment

2
推荐指数
1
解决办法
1116
查看次数

嵌套片段可能吗?

我有一个ViewPager包含三个片段,我想将3个新片段放入第三个片段.这可能吗?

[ViewPager]
    [Fragment 1]
    [Fragment 2]
    [Fragment 3]
        [Fragment 3-1]
        [Fragment 3-2]
        [Fragment 3-3]
[ViewPager]
Run Code Online (Sandbox Code Playgroud)

编辑:我不能getChildFragmentManager()但只能getFragmentManager(),我正在使用android.support.v4.app:

    FragmentManager fm = getFragmentManager();
    FragmentTransaction ft = fm.beginTransaction();
    ft.add(R.layout.tools_frame5, new Plugins());
    ft.commit();
Run Code Online (Sandbox Code Playgroud)

编辑:如何将3个活动放在第三个片段中,这可能吗?

android android-fragments android-viewpager android-nested-fragment

1
推荐指数
1
解决办法
690
查看次数

导航抽屉项是具有选项卡的片段

我正在尝试实现两个选项卡,还有一个导航抽屉.我可以单独做两个,但当我尝试将两者结合起来时,我会遇到问题.我最初有用于创建我的两个标签的代码和我的MainActivity中的导航抽屉,当时这是一个片段活动,但是当我清楚地知道导航抽屉上有一个Home选项时,我决定重构代码标签插入一个带有标签的片段,然后像以前一样用两个片段填充.

在启动时看起来很好但是当我点击导航抽屉中的home选项时,每个选项卡中的片段似乎被剥离,每次单击选项时都会添加两个选项卡.

private void selectItem(int position) {
        Fragment fragment = new NullFragment();
        switch (position){
            case 0:
                fragment = new HomeFragment();
                break;
            case 1:
                         //Placeholder
                fragment = new PlanetFragment();

        }
        // update the main content by replacing fragments
        if (fragment != null) {
            FragmentManager fragmentManager = getFragmentManager();
            fragmentManager.beginTransaction().replace(R.id.content_frame, fragment).commit();

            // update selected item and title, then close the drawer
            drawerListView.setItemChecked(position, true);
            setTitle(drawerItemTitles[position]);
            drawerLayout.closeDrawer(drawerListView);
        } else {
            // error in creating fragment
            Log.e("MainActivity", "Error in creating fragment");
        }
    }
Run Code Online (Sandbox Code Playgroud)

HomeFragment.java

public class …
Run Code Online (Sandbox Code Playgroud)

tabs android android-fragments navigation-drawer android-nested-fragment

1
推荐指数
1
解决办法
4783
查看次数

片段类中的ViewPager无法正常工作

我在Fragment类中使用了ViewPager.在那个ViewPager中,每个页面都有三个页面显示自定义列表视图.ViewPager有时候显示列表视图在一段时间内显示空白页面.

使用ViewPager的Fragment类

public class Schedule extends Fragment{

RelativeLayout schedule_lay;
Schedule_fragment_adapter sfadp;
ViewPager pager;
TitlePageIndicator tpi;
PagerTabStrip pts;

@Override
public View onCreateView(LayoutInflater inflater,final ViewGroup container, Bundle savedInstanceState) {
    if (container == null) {
        return null;
    }

    schedule_lay = (RelativeLayout) inflater.inflate(R.layout.schedule, container, false);
    pager = (ViewPager) schedule_lay.findViewById(R.id.viewpager);
    pts = (PagerTabStrip)schedule_lay.findViewById(R.id.page_title_indicator);
    pts.setDrawFullUnderline(false);

    pts.setTextSize(TypedValue.COMPLEX_UNIT_SP, 22);
    pts.setTabIndicatorColor(Color.parseColor("#ff3824"));

    initialisePaging();

    return schedule_lay;
}

private void initialisePaging() {

    List<Fragment> fragments = new Vector<Fragment>();
    fragments.add(Fragment.instantiate(getActivity(), Ongoing.class.getName()));
    fragments.add(Fragment.instantiate(getActivity(), Upcoming.class.getName()));
    fragments.add(Fragment.instantiate(getActivity(), Recent.class.getName()));
    this.sfadp  = new Schedule_fragment_adapter(super.getActivity().getSupportFragmentManager(), fragments);

    pager.setAdapter(this.sfadp);
}
}
Run Code Online (Sandbox Code Playgroud)

FragmentPagerAdapter …

android android-fragments android-viewpager android-fragmentactivity android-nested-fragment

1
推荐指数
1
解决办法
2176
查看次数

嵌套片段在屏幕旋转后存活

我在Android中面临嵌套片段的问题.当我旋转屏幕时,嵌套片段以某种方式存活.我想出了一个示例来说明这个问题.

public class ParentFragment extends BaseFragment
{
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        return  inflater.inflate(R.layout.fragment_parent, container);
    }

    @Override
    public void onViewCreated(View view, Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);

         getChildFragmentManager()
                 .beginTransaction()
                 .add(getId(), new ParentFragmentChild(), ParentFragmentChild.class.getName())
                 .commit();
    }

    @Override
    public void onResume() {
        super.onResume();
        log.verbose("onResume(), numChildFragments: " + getChildFragmentManager().getFragments().size());
    }     
}

public class ParentFragmentChild extends BaseFragment
{
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        return inflater.inflate(R.layout.fragment_child, null);
    }
}
Run Code Online (Sandbox Code Playgroud)

BaseFragment只记录方法调用.这是我旋转屏幕时看到的.

当Activity最初出现时

ParentFragment? onAttach(): ParentFragment{420d0a98 #0 id=0x7f060064} …
Run Code Online (Sandbox Code Playgroud)

android rotation android-fragments android-nested-fragment

0
推荐指数
1
解决办法
2890
查看次数