阅读设置布局相关优化 #259

This commit is contained in:
HapeLee committed 2025-11-09 15:19:54 +08:00
1 parent cef9610f8f
commit e50d493146
21 files changed
+245 -452

No files matched your search

+3 -2
View File
@@ -24,7 +24,7 @@
app:titleCollapseMode="scale">
<com.google.android.material.appbar.MaterialToolbar
android:theme="@style/ThemeOverlay.Material3.Toolbar.CircleNavigationButton"
android:theme="@style/ThemeOverlay.Material3.Toolbar.CircleNavigationButton"
android:id="@+id/top_bar"
android:layout_width="match_parent"
@@ -44,7 +44,8 @@ android:theme="@style/ThemeOverlay.Material3.Toolbar.CircleNavigationButton"
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginVertical="8dp"
android:layout_marginTop="8dp"
android:layout_marginBottom="60dp"
android:orientation="vertical"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
+18 -254
View File
@@ -1,22 +1,21 @@
<?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:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content">
android:layout_height="match_parent"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center"
android:paddingBottom="16dp"
android:paddingBottom="8dp"
android:paddingHorizontal="16dp">
<com.google.android.material.bottomsheet.BottomSheetDragHandleView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingVertical="16dp"
android:paddingVertical="8dp"
android:minHeight="0dp"
android:layout_gravity="center_horizontal" />
@@ -24,260 +23,25 @@
android:id="@+id/bottom_sheet_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/text_font"
android:textSize="18sp"
android:text="@string/select_font"
android:textSize="16sp"
android:textStyle="bold" />
</LinearLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginHorizontal="16dp"
android:layout_marginBottom="8dp"
android:text="@string/text_typeface"
android:textSize="14sp"
android:textStyle="bold" />
<com.google.android.material.button.MaterialButtonGroup
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="16dp"
android:gravity="end|center_vertical">
<io.legado.app.ui.widget.AccentColorButton
android:id="@+id/btn_text_color"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.Material3Expressive.Button.OutlinedButton"
android:text="@string/text_color" />
<com.google.android.material.button.MaterialButton
android:id="@+id/sw_underline"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.Material3Expressive.Button.IconButton.Tonal"
app:icon="@drawable/ic_underline"
android:checkable="true"
android:focusable="true"/>
<com.google.android.material.button.MaterialButton
android:id="@+id/sw_dottedline"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.Material3Expressive.Button.IconButton.Tonal"
app:icon="@drawable/ic_dottedline"
android:checkable="true"
android:focusable="true"/>
<com.google.android.material.button.MaterialButton
android:id="@+id/btn_textItalic"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.Material3Expressive.Button.IconButton.Tonal"
app:icon="@drawable/ic_format_italic"
android:checkable="true"
android:focusable="true"/>
</com.google.android.material.button.MaterialButtonGroup>
<com.google.android.material.button.MaterialButtonGroup
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingHorizontal="16dp"
android:paddingVertical="4dp"
android:gravity="end|center_vertical">
<io.legado.app.ui.widget.AccentColorButton
android:id="@+id/btnShadowColor"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.Material3Expressive.Button.OutlinedButton"
android:text="@string/text_shadow_color" />
<com.google.android.material.button.MaterialButton
android:id="@+id/btn_textShadow"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.Material3Expressive.Button.IconButton.Tonal"
app:icon="@drawable/ic_shadow"
android:checkable="true"
android:focusable="true"/>
</com.google.android.material.button.MaterialButtonGroup>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="end">
<com.google.android.material.button.MaterialButton
android:id="@+id/textFontWeightConverter"
style="@style/Widget.Material3Expressive.Button.IconButton.Tonal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:minWidth="0dp"
android:textSize="12sp" />
<com.google.android.material.slider.Slider
android:id="@+id/sliderFontWeight"
android:layout_width="160dp"
android:layout_height="wrap_content"
android:stepSize="1"
android:valueFrom="0"
android:valueTo="20"
app:thumbHeight="24dp"
app:trackHeight="24dp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="@string/shadow_typeface"
android:layout_marginHorizontal="16dp"
android:layout_marginVertical="8dp"
android:textSize="14sp"
android:textStyle="bold" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal">
<io.legado.app.ui.widget.SimpleSliderView
android:id="@+id/dsb_shadow_dx"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="32dp"
android:layout_weight="1"
app:isBottomBackground="true"
app:max="20"
app:title="@string/text_shadow_x" />
<io.legado.app.ui.widget.SimpleSliderView
android:id="@+id/dsb_shadow_dy"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
app:isBottomBackground="true"
app:max="20"
app:title="@string/text_shadow_y" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="bottom">
<io.legado.app.ui.widget.SimpleSliderView
android:id="@+id/dsb_shadow_radius"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="32dp"
android:layout_weight="1"
app:isBottomBackground="true"
app:max="50"
app:title="@string/text_shadow_radius" />
<io.legado.app.ui.widget.SimpleSliderView
android:id="@+id/btn_indent_layout"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
app:title="@string/text_indent"
app:max="4" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal">
<io.legado.app.ui.widget.SimpleSliderView
android:id="@+id/dsb_paragraph_spacing"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="32dp"
android:layout_weight="1"
app:max="20"
app:isBottomBackground="true"
app:title="@string/paragraph_size" />
<io.legado.app.ui.widget.SimpleSliderView
android:id="@+id/dsb_line_size"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
app:isBottomBackground="true"
app:max="20"
app:title="@string/line_size" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal">
<io.legado.app.ui.widget.SimpleSliderView
android:id="@+id/dsb_text_letter_spacing"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
app:isBottomBackground="true"
app:max="100"
app:title="@string/text_letter_spacing" />
</LinearLayout>
</LinearLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="@string/select_font"
android:layout_marginHorizontal="16dp"
android:layout_marginBottom="8dp"
android:textSize="14sp"
android:textStyle="bold" />
<com.google.android.material.button.MaterialButtonGroup
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="end"
android:paddingHorizontal="16dp">
<com.google.android.material.button.MaterialButton
android:id="@+id/btn_default_fonts"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.Material3Expressive.Button.OutlinedButton"
android:text="@string/default_font"/>
<com.google.android.material.button.MaterialButton
android:id="@+id/btn_other_dir"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.Material3Expressive.Button.OutlinedButton"
android:text="@string/other_folder"/>
</com.google.android.material.button.MaterialButtonGroup>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycler_view"
android:id="@+id/recyclerView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="2dp" />
android:layout_height="0dp"
android:layout_weight="1" />
<com.google.android.material.button.MaterialButton
android:id="@+id/btn_other_dir"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="16dp"
android:layout_marginVertical="8dp"
style="@style/Widget.Material3Expressive.Button.OutlinedButton"
android:text="@string/other_folder"/>
</LinearLayout>
@@ -17,7 +17,7 @@
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center"
android:paddingBottom="4dp"
android:paddingBottom="8dp"
android:paddingHorizontal="16dp">
<com.google.android.material.bottomsheet.BottomSheetDragHandleView
@@ -30,7 +30,7 @@
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingVertical="8dp"
android:paddingTop="8dp"
android:orientation="horizontal">
<TextView
@@ -287,6 +287,7 @@
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
tool:listitem="@layout/item_read_style"
app:layout_constraintStart_toEndOf="@id/cb_share_layout"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"/>
+4 -4
View File
@@ -12,22 +12,22 @@
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center"
android:paddingBottom="16dp"
android:paddingBottom="8dp"
android:paddingHorizontal="16dp">
<com.google.android.material.bottomsheet.BottomSheetDragHandleView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingVertical="16dp"
android:layout_gravity="center_horizontal"
android:minHeight="0dp"
android:layout_gravity="center_horizontal" />
android:paddingVertical="8dp" />
<TextView
android:id="@+id/bottom_sheet_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/header_footer"
android:textSize="18sp"
android:textSize="16sp"
android:textStyle="bold" />
</LinearLayout>
@@ -0,0 +1,37 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingTop="32dp"
android:paddingBottom="16dp"
android:orientation="vertical"
xmlns:app="http://schemas.android.com/apk/res-auto">
<io.legado.app.ui.widget.SimpleSliderView
android:id="@+id/dsb_shadow_dx"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:isBottomBackground="true"
app:max="20"
app:title="@string/text_shadow_x" />
<io.legado.app.ui.widget.SimpleSliderView
android:id="@+id/dsb_shadow_dy"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:isBottomBackground="true"
app:max="20"
app:title="@string/text_shadow_y" />
<io.legado.app.ui.widget.SimpleSliderView
android:id="@+id/dsb_shadow_radius"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:isBottomBackground="true"
app:max="50"
app:title="@string/text_shadow_radius" />
</LinearLayout>
@@ -16,13 +16,13 @@
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center"
android:paddingBottom="16dp"
android:paddingBottom="8dp"
android:paddingHorizontal="16dp">
<com.google.android.material.bottomsheet.BottomSheetDragHandleView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingVertical="16dp"
android:paddingVertical="8dp"
android:minHeight="0dp"
android:layout_gravity="center_horizontal" />
@@ -31,7 +31,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/read_config"
android:textSize="18sp"
android:textSize="16sp"
android:textStyle="bold" />
</LinearLayout>
@@ -25,8 +25,14 @@
android:id="@+id/loading"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:progress="50"
app:trackColor="?attr/colorOnSurfaceVariant"
app:indicatorColor="?attr/colorPrimaryVariant"
android:indeterminate="false"
app:indicatorSize="64dp"
app:waveAmplitude="2dp"
app:wavelength="16dp"
app:waveSpeed="50dp"
android:layout_gravity="center" />
@@ -44,8 +50,7 @@
app:icon="@drawable/ic_refresh"
app:iconSize="24sp"
app:iconTint="?attr/colorSurfaceVariant"
android:visibility="gone"
tools:visibility="visible" />
android:visibility="gone" />
<TextView
android:id="@+id/progress"