如何在viewPager的末尾显示同级视图?

时间:2016-10-04 06:21:48

标签: android android-fragments android-viewpager android-scrollview android-framelayout

@Html.TextBox("Tier2Notes",Model.Tier2Issue.Tier2Notes, new { @class = "form-control"}) FrameLayout即使放在TextView后也不可见。 ScrollViewViewPager被替换为不同的FrameLayout。 我希望android.support.v4.app.FragmentgmentsFrameLayout显示在TextView的末尾(滚动后如果超出屏幕高度)。

ViewPager

1 个答案:

答案 0 :(得分:0)

TLDR; 只需在布局中添加ScrollViewFrameLayout容器,在Fragment内填充此布局,将子片段添加到FrameLayout中的onViewCreated()个容器中在此片段中,从getItem()的{​​{1}}返回此片段。

在MainActivity / MainFragment中填充以下布局,

PagerAdapter

R.layout.frag_main

使用<RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:android="http://schemas.android.com/apk/res/android"> <android.support.v4.view.ViewPager android:id="@+id/view_pager" android:layout_width="match_parent" android:layout_height="wrap_content"/> </RelativeLayout> 设置ViewPager并从适配器的PagerAdapter方法返回所需的片段,如下所示

getItem()

@Override public Fragment getItem(int position) { return ViewPagerFragment.newInstance(position); }

ViewPagerFragment

现在,对于 @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = null; int position = getArguments().getInt(ARG_POSITION); switch (position) { case 0: view = inflater.inflate(R.layout.page_0, container, false); break; case 1: view = ... //page 1 layout break; case 2: view = ... //page 2 layout break; } return view; } @Override public void onViewCreated(View view, Bundle savedInstanceState) { super.onViewCreated(view, savedInstanceState); if (view.findViewById(R.id.view_container2) != null) { getChildFragmentManager().beginTransaction() .add(R.id.view_container, new FrameLayoutFragment()) .commit(); } } position的页面,您可以充气

ViewPagerFragment

R.layout.page_0

你有它

  1. <ScrollView android:layout_height="match_parent" android:fillViewport="true" android:layout_width="match_parent"> <LinearLayout android:layout_width="match_parent" android:orientation="vertical" android:layout_height="wrap_content"> <--your ViewPagerFragment content here--> <FrameLayout android:layout_width="match_parent" android:id="@+id/view_container" android:layout_height="wrap_content"/> </LinearLayout> </ScrollView> ViewPager
  2. 的不同片段
  3. 由于FrameLayout已添加到FrameLayoutFragment的底部,因此在向下滚动后会显示。