Browse Source

fix 设置界面改成透明活动,以保证主页面保持活动

RobinTan1024 4 years ago
parent
commit
11f27d2936

+ 4 - 1
app/src/main/AndroidManifest.xml

@@ -25,7 +25,10 @@
             </intent-filter>
         </activity>
         <activity android:name=".view.MainActivity" />
-        <activity android:name=".view.PreferenceActivity" android:label="@string/preference" />
+        <activity
+            android:name=".view.PreferenceActivity"
+            android:label="@string/preference"
+            android:theme="@style/ActivityTransparent" />
 
         <provider
             android:name="androidx.startup.InitializationProvider"

+ 4 - 13
app/src/main/java/com/doverfuelingsolutions/issp/view/PreferenceActivity.kt

@@ -68,10 +68,10 @@ class PreferenceActivity : AppCompatActivity(),
 
     override fun onCreate(savedInstanceState: Bundle?) {
         super.onCreate(savedInstanceState)
+        supportActionBar?.hide()
         binding.lifecycleOwner = this
         binding.viewModel = viewModel
         binding.handler = this
-        supportActionBar?.setDisplayHomeAsUpEnabled(true)
         if (savedInstanceState == null) {
             supportFragmentManager
                 .beginTransaction()
@@ -113,23 +113,14 @@ class PreferenceActivity : AppCompatActivity(),
         }
     }
 
-    override fun onOptionsItemSelected(item: MenuItem): Boolean {
-        return when (item.itemId) {
-            android.R.id.home -> {
-                onBackPressed()
-                true
-            }
-            else -> {
-                super.onOptionsItemSelected(item)
-            }
-        }
-    }
-
     override fun onClick(v: View?) {
         when (v) {
             binding.checkUpdate -> {
                 processUpdate()
             }
+            binding.buttonClose -> {
+                onBackPressed()
+            }
         }
     }
 

+ 48 - 23
app/src/main/res/layout/activity_preference.xml

@@ -11,32 +11,57 @@
             type="com.doverfuelingsolutions.issp.view.PreferenceActivity" />
     </data>
 
-    <ScrollView style="@style/match">
+    <LinearLayout
+        android:layout_width="800dp"
+        android:layout_height="1600dp"
+        android:layout_gravity="center"
+        android:background="@color/white"
+        android:elevation="60dp"
+        android:orientation="vertical"
+        android:paddingVertical="40dp"
+        android:weightSum="1">
 
-        <LinearLayout
-            style="@style/fullWidth"
-            android:orientation="vertical">
+        <TextView
+            style="@style/wrap"
+            android:layout_marginStart="40dp"
+            android:layout_marginBottom="30dp"
+            android:text="@string/preference"
+            android:textSize="22sp" />
+
+        <ScrollView
+            android:layout_width="match_parent"
+            android:layout_height="0dp"
+            android:layout_weight="1">
 
             <FrameLayout
                 android:id="@+id/container"
-                style="@style/match" />
-
-            <LinearLayout
-                style="@style/fullWidth"
-                android:layout_marginTop="40dp"
-                android:gravity="center_horizontal"
-                android:orientation="horizontal">
-
-                <Button
-                    android:id="@+id/checkUpdate"
-                    android:enabled="@{!viewModel.isLookingUpdate}"
-                    style="@style/Widget.MaterialComponents.Button"
-                    android:layout_width="wrap_content"
-                    android:layout_height="wrap_content"
-                    android:layout_marginHorizontal="20dp"
-                    android:onClick="@{handler}"
-                    android:text="@{viewModel.isLookingUpdate ? @string/in_check_update : @string/check_update}" />
-            </LinearLayout>
+                style="@style/fullWidth" />
+        </ScrollView>
+
+        <LinearLayout
+            style="@style/fullWidth"
+            android:layout_marginTop="40dp"
+            android:gravity="center_horizontal"
+            android:orientation="horizontal">
+
+            <Button
+                android:id="@+id/checkUpdate"
+                style="@style/Widget.MaterialComponents.Button"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginHorizontal="20dp"
+                android:enabled="@{!viewModel.isLookingUpdate}"
+                android:onClick="@{handler}"
+                android:text="@{viewModel.isLookingUpdate ? @string/in_check_update : @string/check_update}" />
+
+            <Button
+                android:id="@+id/buttonClose"
+                style="@style/Widget.MaterialComponents.Button.TextButton"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginHorizontal="20dp"
+                android:onClick="@{handler}"
+                android:text="@string/click_close" />
         </LinearLayout>
-    </ScrollView>
+    </LinearLayout>
 </layout>

+ 8 - 0
app/src/main/res/values/styles.xml

@@ -1,6 +1,13 @@
 <?xml version="1.0" encoding="utf-8"?>
 <resources>
 
+    <style name="ActivityTransparent" parent="@style/Theme.Issp">
+        <item name="android:windowBackground">@color/colorTransparent</item>
+        <item name="android:windowIsTranslucent">true</item>
+        <item name="android:windowNoTitle">true</item>
+        <item name="android:windowFullscreen">true</item>
+    </style>
+
     <style name="match">
         <item name="android:layout_width">match_parent</item>
         <item name="android:layout_height">match_parent</item>
@@ -25,4 +32,5 @@
         <item name="android:layout_width">0dp</item>
         <item name="android:layout_height">0dp</item>
     </style>
+
 </resources>