diff --git a/app/src/main/java/io/legado/app/ui/main/bookshelf/style1/books/BooksFragment.kt b/app/src/main/java/io/legado/app/ui/main/bookshelf/style1/books/BooksFragment.kt index e77888abd..dbdc9c8ab 100644 --- a/app/src/main/java/io/legado/app/ui/main/bookshelf/style1/books/BooksFragment.kt +++ b/app/src/main/java/io/legado/app/ui/main/bookshelf/style1/books/BooksFragment.kt @@ -156,6 +156,7 @@ class BooksFragment() : BaseFragment(R.layout.fragment_books), AppLog.put("书架更新出错", it) }.conflate().collect { list -> binding.tvEmptyMsg.isGone = list.isNotEmpty() + binding.refreshLayout.isEnabled = list.isNotEmpty() booksAdapter.setItems(list) recoverPositionState() delay(100) diff --git a/app/src/main/java/io/legado/app/ui/widget/recycler/scroller/FastScrollRecyclerView.kt b/app/src/main/java/io/legado/app/ui/widget/recycler/scroller/FastScrollRecyclerView.kt index a7299f5e6..d75f4f645 100644 --- a/app/src/main/java/io/legado/app/ui/widget/recycler/scroller/FastScrollRecyclerView.kt +++ b/app/src/main/java/io/legado/app/ui/widget/recycler/scroller/FastScrollRecyclerView.kt @@ -3,7 +3,11 @@ package io.legado.app.ui.widget.recycler.scroller import android.content.Context import android.util.AttributeSet import android.view.ViewGroup +import android.widget.FrameLayout +import android.widget.RelativeLayout import androidx.annotation.ColorInt +import androidx.constraintlayout.widget.ConstraintLayout +import androidx.coordinatorlayout.widget.CoordinatorLayout import androidx.recyclerview.widget.RecyclerView import io.legado.app.R @@ -149,7 +153,13 @@ class FastScrollRecyclerView : RecyclerView { override fun onAttachedToWindow() { super.onAttachedToWindow() mFastScroller.attachRecyclerView(this) - val parent = parent + var parent = parent + while (parent != null) { + when (parent) { + is ConstraintLayout, is CoordinatorLayout, is FrameLayout, is RelativeLayout -> break + else -> parent = parent.parent + } + } if (parent is ViewGroup && parent.indexOfChild(mFastScroller) == -1) { parent.addView(mFastScroller) mFastScroller.setLayoutParams(parent) diff --git a/app/src/main/res/layout/activity_arrange_book.xml b/app/src/main/res/layout/activity_arrange_book.xml index aac45a7ce..178ff06fe 100644 --- a/app/src/main/res/layout/activity_arrange_book.xml +++ b/app/src/main/res/layout/activity_arrange_book.xml @@ -1,25 +1,26 @@ + android:layout_height="match_parent" + android:orientation="vertical"> + app:layout_constraintTop_toTopOf="parent" + app:title="@string/bookshelf_management" /> - + android:scrollbars="none" + app:layout_constraintBottom_toTopOf="@id/select_action_bar" + app:layout_constraintTop_toBottomOf="@id/title_bar" /> + android:layout_height="match_parent"> - @@ -21,11 +22,11 @@ android:id="@+id/tv_empty_msg" android:layout_width="wrap_content" android:layout_height="wrap_content" + android:layout_gravity="center" android:layout_margin="16dp" android:gravity="center" - android:layout_gravity="center" - android:visibility="gone" android:text="@string/bookshelf_empty" + android:visibility="gone" tools:text="TextView" />