我正在制作一个使用 Coordinator 布局的应用程序,我在其中使用了两个 TextView 和两个 float 操作按钮。当我向上滚动时,当一个 floatingactionbutton 离开 View 时,两个按钮都会隐藏,但 textview 不会隐藏。
下面显示的示例图片与我在上面解释的内容有关。 View when the floating action button is inside the view
View when both textivew and floatingactionbuttons are out of view
这是我的布局代码
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout 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"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:context="com.trueblueoperator.samplescrolling.ScrollingActivity">
<android.support.design.widget.AppBarLayout
android:id="@+id/app_bar"
android:layout_width="match_parent"
android:layout_height="192dp"
android:fitsSystemWindows="true"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/toolbar_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
app:contentScrim="?attr/colorPrimary"
app:layout_scrollFlags="scroll|exitUntilCollapsed">
<ImageView
android:layout_width="match_parent"
android:layout_height="192dp"
android:scaleType="centerCrop"
android:src="@drawable/image"
app:layout_collapseMode="parallax" />
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:layout_collapseMode="pin"
app:popupTheme="@style/AppTheme.PopupOverlay" />
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
<include layout="@layout/content_scrolling" />
<android.support.design.widget.FloatingActionButton
android:id="@+id/fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/dislike"
app:layout_anchor="@id/app_bar"
app:layout_anchorGravity="right|center_vertical" />
<TextView
android:id="@+id/dislikes"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="5dp"
android:paddingBottom="5dp"
android:paddingTop="5dp"
android:paddingRight="70dp"
android:textSize="20dp"
android:background="@drawable/rounded_corner"
android:text="10"
android:focusable="true"
app:layout_anchor="@id/app_bar"
app:layout_anchorGravity="right|center_vertical"
/>
<android.support.design.widget.FloatingActionButton
android:id="@+id/fab1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/like"
app:layout_anchor="@id/app_bar"
app:layout_anchorGravity="right|bottom" />
<TextView
android:id="@+id/likes"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="5dp"
android:paddingBottom="5dp"
android:paddingTop="5dp"
android:paddingRight="70dp"
android:textSize="20dp"
android:focusable="true"
android:background="@drawable/rounded_corner"
android:text="100"
app:layout_anchor="@id/app_bar"
app:layout_anchorGravity="right|bottom"
/>
</android.support.design.widget.CoordinatorLayout>
最佳答案
在你的 AppBarLayout
上添加 Offset Changed 监听器
mAppBarLayout.addOnOffsetChangedListener(this);
覆盖方法在此处输入代码
@Override
public void onOffsetChanged(AppBarLayout appBarLayout, int i) {
if (Math.abs(i) >= (appBarLayout.getTotalScrollRange())) {
// Make your TextView Visible here
} else {
// Make your TextView Invisible here
}
}
关于android - 如何在上下滚动时隐藏和取消隐藏 TextView ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34610667/