片段中的ViewPager不会从屏幕底部向上滑动

时间:2018-06-03 19:07:33

标签: android android-fragments layout android-viewpager slide

我正在尝试从屏幕底部向上滑动片段。

为实现这一目标,我使用的是Interpolator,Slide和Fragment.setEnterTransition。

当我运行此代码时,每个视图都会出现并从屏幕的最底部向上滑动但是 ViewPager从其高度0开始显示(就像从屏幕中间开始一样,然后向上滑动到屏幕的顶部,因为它的高度是'300dp')(请参阅下面屏幕截图中的粉色线。)

我尝试用ImageView替换ViewPager,在这种情况下,所有内容都会从屏幕的最底部(所有ImageView,TextView,Button等)向上滑动,这非常好。但是,ViewPager是从页面底部向上滑动的唯一东西,它只是从它的高度dp开始出现并向上滑动(距屏幕顶部300dp左右)屏幕)

我认为我很好地解释了这个问题但是如果很难理解,这是截图。一切都从页面底部向上滑动,但ViewPager出现并从红色/粉红色线向上滑动。当我用ImageView或XML文件中的任何其他视图替换ViewPager时,替换的视图从底部向上滑动。所以我认为ViewPager是造成这个问题的唯一因素。

这些实现如下:

MainActivity:

private void initView() {
    Button button = findViewById(R.id.button_show);
    button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            showFrag();
        }
    });
}

private void showFrag() {
    Fragment tempFragment = new TempFragment();
    Slide slide = new Slide(Gravity.BOTTOM);
    slide.setInterpolator(new LinearOutSlowInInterpolator());
    slide.setDuration(1000);
    tempFragment.setEnterTransition(slide);

    FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
    transaction.replace(R.id.fragment_container, tempFragment);
    transaction.commit();

}

activity_main.xml中:

<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/weirdBlue">

    <Button
        android:id="@+id/button_show"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:text="show" />

    <FrameLayout
        android:id="@+id/fragment_container"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

</RelativeLayout>

fragment_main.xml - 这是从TempFragment-onCreateView()

膨胀的
<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <android.support.v4.view.ViewPager
        android:id="@+id/view_pager"
        android:layout_width="match_parent"
        android:layout_height="300dp" />

    <TextView
        android:id="@+id/text_view"
        android:layout_width="wrap_content"
        android:layout_height="50dp"
        android:layout_below="@id/view_pager"
        android:layout_centerHorizontal="true"
        android:text="test text" />

    <Button
        android:layout_width="match_parent"
        android:layout_height="100dp"
        android:layout_below="@id/text_view"
        android:layout_marginBottom="20dp"
        android:layout_marginEnd="30dp"
        android:layout_marginStart="30dp"
        android:text="button" />

</RelativeLayout>

enter image description here

任何人都可以帮助我如何使ViewPager从屏幕底部一直向上滑动,就像其他视图一样吗?我真的不知道如何从屏幕底部一直制作一个ViewPager幻灯片...

0 个答案:

没有答案