gpt4 book ai didi

android - FloatingActionButton 可见一段时间,即使可见性设置为消失

转载 作者:行者123 更新时间:2023-11-29 15:10:01 24 4
gpt4 key购买 nike

我的 LinearLayout 中有一个 FAB (FloatingActionButton)。我希望隐藏 LinearLayout,即首先将可见性设置为消失,然后在单击菜单按钮时它应该可见。一切正常,但 FAB 在隐藏自身之前会保持可见一段时间。我尝试了从更改 FAB 的可见性到使用 hide() 和 show() 的所有方法,但没有任何效果。

我得到了以下链接,但出于某种原因它们对我不起作用。

  1. FloatingActionButton always visible
  2. Gone FAB becames visible for a while
  3. FloatingActionButton doesn't hide

我的 activity_main.xml:

<android.support.v4.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">

<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="com.wolfarts.checklist2.MainActivity">

<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:elevation="0dp"
android:paddingTop="24dp"
android:theme="@style/MyToolbarStyle">

<Spinner
android:id="@+id/spinner_nav"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Base.TextAppearance.AppCompat.Title"
android:visibility="gone"/>

</android.support.v7.widget.Toolbar>

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

<LinearLayout
android:id="@+id/emptyStateView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center">

<ImageView
android:src="@drawable/emptystatebag"
android:layout_marginTop="-30dp"
android:layout_gravity = "center"
android:layout_height="170dp"
android:layout_width="300dp"/>

<TextView
android:paddingTop="8dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:gravity = "center"
android:text="Nothing here. Try Adding Something."
android:textColor="#B8B8B8"
android:textSize="18sp"/>

</LinearLayout>

<android.support.design.widget.CoordinatorLayout
android:id="@+id/maincontainer"
android:layout_width="match_parent"
android:layout_height="match_parent">

<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:animateLayoutChanges="true">

<LinearLayout
android:id="@+id/toolbarContent"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingLeft="72dp"
android:paddingStart="72dp"
android:paddingRight="18dp"
android:paddingEnd="18dp"
android:paddingBottom="80dp"
android:visibility="gone"
android:elevation="4dp"
android:descendantFocusability="beforeDescendants"
android:focusableInTouchMode="true">

<android.support.design.widget.TextInputLayout
android:id="@+id/username_text_input_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColorHint="#B3FFFFFF"
android:layout_gravity="center_vertical">

<EditText
android:id="@+id/taskName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="35sp"
android:maxLines="1"
android:hint="Item Name"/>

</android.support.design.widget.TextInputLayout>

</LinearLayout>

<com.wolfarts.checklist2.CustomRecyclerView
android:id="@+id/taskListRecyclerView"
android:layout_height="match_parent"
android:layout_width="match_parent"/>

</LinearLayout>

<android.support.design.widget.FloatingActionButton
android:id="@+id/fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="16dp"
android:paddingLeft="16dp"
android:clickable="true"
android:src="@drawable/ic_done_white_24dp"
app:layout_anchor="@id/toolbarContent"
app:layout_anchorGravity="bottom|right|end"
app:backgroundTint="@color/orange"
android:visibility="gone"
app:elevation="8dp"/>

</android.support.design.widget.CoordinatorLayout>

</FrameLayout>

</LinearLayout>



<LinearLayout
android:id="@+id/navDrawer"
android:layout_width="280dp"
android:layout_height="match_parent"
android:layout_gravity="left|start">

<ListView
android:id="@+id/navList"
android:paddingTop="24dp"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:divider="@android:color/transparent"
android:dividerHeight="0dp"
android:background="#ffeeeeee"/>

</LinearLayout>

这是 FAB 中的错误吗?

最佳答案

        CoordinatorLayout.LayoutParams p = (CoordinatorLayout.LayoutParams)    fab.getLayoutParams();
p.setAnchorId(View.NO_ID);
p.width = 0;
p.height = 0;
fab.setLayoutParams(p);
fab.setVisibility(View.GONE);

关于android - FloatingActionButton 可见一段时间,即使可见性设置为消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32732932/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com