Android Изменение анимации высоты элемента NestedScrollView вызывает исчезновение элемента - PullRequest
0 голосов
/ 13 июля 2020

моя цель - реализовать это

Я пытаюсь применить тот же лог c здесь

image

но затем я пытаюсь сделать код более сложным, например, logi c не работает должным образом

<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools">

    <RelativeLayout
        android:id="@+id/productLayout"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@color/colorWhite"
        android:layoutDirection="locale"
        android:orientation="vertical"
        android:visibility="gone"
        tools:context=".Activities.ProductDetailsActivity">

        <androidx.core.widget.NestedScrollView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_above="@+id/addToBag">

            <RelativeLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent">

                <LinearLayout
                    android:id="@+id/sliderLayout"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:orientation="vertical">
      
                    <com.smarteist.autoimageslider.SliderView
                        android:id="@+id/imageSlider"
                        android:layout_width="match_parent"
                        android:layout_height="450dp"
                        app:sliderAnimationDuration="600"
                        app:sliderAutoCycleDirection="back_and_forth"
                        app:sliderAutoCycleEnabled="true"
                        app:sliderCircularHandlerEnabled="true"
                        app:sliderIndicatorAnimationDuration="1000"
                        app:sliderIndicatorGravity="center_horizontal|bottom"
                        app:sliderIndicatorMargin="20.5dp"
                        app:sliderIndicatorOrientation="horizontal"
                        app:sliderIndicatorPadding="3dp"
                        app:sliderIndicatorRadius="2dp"
                        app:sliderIndicatorSelectedColor="#6E6C6C"
                        app:sliderIndicatorUnselectedColor="@color/grayColorE"
                        app:sliderScrollTimeInSec="8"
                        app:sliderStartAutoCycle="true" />
       
                </LinearLayout>
                
            </RelativeLayout>

        </androidx.core.widget.NestedScrollView>

        <TextView
            android:id="@+id/addToBag"
            android:layout_width="match_parent"
            android:layout_height="64dp"
            android:layout_alignParentBottom="true"
            android:layout_marginTop="28dp"
            android:background="@color/colorPrimary"
            android:fontFamily="@font/futura_heavy"
            android:gravity="center"
            android:padding="@dimen/_8sdp"
            android:text="@string/add_to_bag"
            android:textAllCaps="true"
            android:textColor="@color/colorWhite"
            android:textSize="@dimen/_11sdp" />

    </RelativeLayout>
</layout>

и код для щелчка по ползунку :

         viewHolder.itemView.setOnClickListener(v -> {
            TransitionManager.beginDelayedTransition(sliderView, new TransitionSet()
                    .addTransition(new ChangeBounds())
                    .addTransition(new ChangeImageTransform()));

            ViewGroup.LayoutParams params = imageSlider.getLayoutParams();
            params.height = isApplied ? MATCH_PARENT :
                    UiUtils.dpToPx(450);

            imageSlider.setScaleType(isApplied ? ImageView.ScaleType.CENTER_CROP : ImageView.ScaleType.FIT_XY);

            sliderView.setLayoutParams(params);
            imageSlider.setLayoutParams(params);

            isApplied = !isApplied;
        });

в результате сам слайдер скрыт, так что кто-нибудь может мне помочь, пожалуйста? если есть другой способ добиться видео, укажите

...