我正在借助嵌套滚动视图设置工具栏动画。但是setOnScrollChangeListener
无法正常工作。
这里的问题是
setOnScrollChangeListener
不起作用。卷动 没有检测到
请帮助我解决此问题。我认为问题出在我的xml设计上,因为我只是在演示项目中使用了代码,所以效果很好。 但在这里不起作用。没有检测到滚动。
这是我的xml文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/main_content"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:orientation="vertical"
android:gravity="center"
android:background="#ffff">
<LinearLayout
android:id="@+id/new_bar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center"
>
<TextView
android:id="@+id/new_tool"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="header text"
android:textSize="16dp"
android:textColor="@color/app_gray"
android:textStyle="bold"/>
</LinearLayout>
</LinearLayout>
<android.support.design.widget.CoordinatorLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.AppBarLayout
android:id="@+id/appbar"
android:layout_width="match_parent"
android:layout_height="50dp"
android:background="#FFF"
android:fitsSystemWindows="true"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:orientation="vertical"
app:layout_scrollFlags="scroll|enterAlways">
<TextView
android:id="@+id/colapseHead"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="header text"
android:layout_marginLeft="10dp"
android:layout_marginBottom="5dp"
android:textSize="30dp"
android:textColor="@color/app_gray"
android:textStyle="bold"/>
</LinearLayout>
</android.support.design.widget.AppBarLayout>
<android.support.v4.widget.NestedScrollView
android:id="@+id/nested_content"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"
android:clipToPadding="false"
android:scrollbars="none"
android:scrollingCache="true"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
android:layout_marginBottom="50dp">
<android.support.v4.view.ViewPager
android:id="@+id/viewpager"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:visibility="visible"
android:focusableInTouchMode="true"
android:background="#fff"
/>
</android.support.v4.widget.NestedScrollView>
<android.support.design.widget.CoordinatorLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:visibility="gone"
android:layout_gravity="bottom">
<RelativeLayout
android:id="@+id/lay_tabs"
android:layout_width="match_parent"
android:layout_alignParentBottom="true"
android:layout_height="50dp">
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="@color/app_graylight"/>
<android.support.design.widget.TabLayout
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_below="@+id/re_lay"
android:layout_alignParentBottom="true"
android:background="@color/white"
app:tabIndicatorColor="@null"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:orientation="horizontal"
android:weightSum="5">
<RelativeLayout
android:layout_width="0px"
android:layout_height="match_parent"
android:translationZ="5dp"
android:layout_weight="1"
android:layout_marginLeft="8dp"
android:layout_marginRight="3dp"
>
<RelativeLayout
android:id="@+id/lay1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/app_white"
android:visibility="visible">
<ImageView
android:id="@+id/img1"
android:layout_width="30dp"
android:layout_height="30dp"
android:padding="5dp"
android:layout_centerHorizontal="true"
android:layout_marginTop="5dp"
android:src="@drawable/home_tab_icon"/>
<com.nocon.spark.manager.FontFitTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_marginTop="1dp"
android:textSize="60sp"
android:textColor="@color/bottomtextcolor"
android:layout_below="@+id/img1"
android:text="@string/tab_home"
android:layout_centerHorizontal="true"/>
</RelativeLayout>
</RelativeLayout>
<RelativeLayout
android:layout_width="0px"
android:layout_weight="1"
android:layout_height="match_parent"
android:translationZ="5dp"
android:layout_marginLeft="3dp"
android:layout_marginRight="8dp"
>
<RelativeLayout
android:id="@+id/lay2"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/app_white"
android:visibility="visible">
<ImageView
android:id="@+id/img2"
android:layout_width="30dp"
android:layout_height="30dp"
android:padding="5dp"
android:layout_centerHorizontal="true"
android:layout_marginTop="5dp"
android:src="@drawable/virtual_tab_icon"/>
<com.nocon.spark.manager.FontFitTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_marginTop="1dp"
android:textSize="60sp"
android:textColor="@color/bottomtextcolor"
android:layout_below="@+id/img2"
android:text="@string/more_appointments"
android:layout_centerHorizontal="true"/>
</RelativeLayout>
</RelativeLayout>
<RelativeLayout
android:layout_width="0px"
android:layout_height="match_parent"
android:translationZ="5dp"
android:layout_weight="1"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
>
<RelativeLayout
android:id="@+id/lay5"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/app_white"
android:visibility="visible">
<ImageView
android:id="@+id/img5"
android:layout_width="30dp"
android:layout_height="30dp"
android:padding="5dp"
android:layout_centerHorizontal="true"
android:layout_marginTop="5dp"
android:src="@drawable/message_icon"/>
<com.nocon.spark.manager.FontFitTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_marginTop="1dp"
android:textSize="60sp"
android:textColor="@color/bottomtextcolor"
android:layout_below="@+id/img5"
android:text="@string/chatbot"
android:layout_centerHorizontal="true"/>
</RelativeLayout>
</RelativeLayout>
<RelativeLayout
android:layout_width="0px"
android:layout_height="match_parent"
android:translationZ="5dp"
android:layout_weight="1"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
>
<RelativeLayout
android:id="@+id/lay3"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/app_white"
android:visibility="visible">
<ImageView
android:id="@+id/img3"
android:layout_width="30dp"
android:layout_height="30dp"
android:padding="5dp"
android:layout_centerHorizontal="true"
android:layout_marginTop="5dp"
android:src="@drawable/my_health_tab_icon"/>
<com.nocon.spark.manager.FontFitTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_marginTop="1dp"
android:textSize="60sp"
android:textColor="@color/bottomtextcolor"
android:layout_below="@+id/img3"
android:text="@string/tab_health"
android:layout_centerHorizontal="true"
style="@style/tabtextstyle"/>
</RelativeLayout>
</RelativeLayout>
<RelativeLayout
android:layout_width="0px"
android:layout_height="match_parent"
android:translationZ="5dp"
android:layout_weight="1"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
>
<RelativeLayout
android:id="@+id/lay4"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/app_white"
android:visibility="visible">
<ImageView
android:id="@+id/img4"
android:layout_width="30dp"
android:layout_height="30dp"
android:padding="5dp"
android:layout_centerHorizontal="true"
android:layout_marginTop="5dp"
android:src="@drawable/account_tab_icon"
android:tint="@color/app_header"/>
<com.nocon.spark.manager.FontFitTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="60sp"
android:gravity="center"
android:layout_marginTop="1dp"
android:textColor="@color/bottomtextcolor"
android:layout_below="@+id/img4"
android:text="@string/tab_account"
android:layout_centerHorizontal="true"/>
</RelativeLayout>
</RelativeLayout>
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="@color/app_graylight"/>
</RelativeLayout>
</android.support.design.widget.CoordinatorLayout>
</android.support.design.widget.CoordinatorLayout>
</LinearLayout>
这是我的代码
final NestedScrollView nested_content = (NestedScrollView) findViewById(R.id.nested_content);
nested_content.setOnScrollChangeListener(new NestedScrollView.OnScrollChangeListener() {
@Override
public void onScrollChange(NestedScrollView v, int scrollX, int scrollY, int oldScrollX, int oldScrollY) {
Log.e("ProductFragment","position button " + scrollX + "======= scrollY " + scrollY);
if (scrollY < oldScrollY) { // up
animateFab(true);
animateSearchBar(true);
colapseBar.setVisibility(View.GONE);
}
if (scrollY > oldScrollY) { // down
animateFab(false);
animateSearchBar(false);
colapseBar.setVisibility(View.VISIBLE);
}
}
});