OSDN Git Service

Use layout weight attr and scrollview in lock pattern screen.
authorjackqdyulei <jackqdyulei@google.com>
Tue, 18 Oct 2016 23:39:02 +0000 (16:39 -0700)
committerjackqdyulei <jackqdyulei@google.com>
Thu, 20 Oct 2016 17:51:15 +0000 (10:51 -0700)
General idea is to stop UI distortion when display size set to
largest. Use layout weight to distribute space by ratio, and use
scroll view to wrap "title and summary" layout in case display
size are too large to display.

Bug: 32057149
Test: Visual

Change-Id: Ie800e4c5e98f6bbd699395168cfc228f8b65ac7f

res/layout/confirm_lock_pattern_base.xml

index 7c960a2..e6b7887 100644 (file)
         android:layout_gravity="top|center_horizontal"
         android:paddingTop="@dimen/confirm_credentials_top_padding">
 
-        <TextView
-            style="@android:style/TextAppearance.Material.Headline"
-            android:id="@+id/headerText"
-            android:layout_marginStart="?attr/confirmDeviceCredentialsSideMargin"
-            android:layout_marginEnd="?attr/confirmDeviceCredentialsSideMargin"
-            android:layout_marginTop="?attr/confirmDeviceCredentialsTopMargin"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:textColor="?android:attr/colorAccent"/>
-
-        <TextView
-            style="@android:style/TextAppearance.Material.Body1"
-            android:id="@+id/detailsText"
-            android:layout_marginStart="?attr/confirmDeviceCredentialsSideMargin"
-            android:layout_marginEnd="?attr/confirmDeviceCredentialsSideMargin"
-            android:layout_marginTop="12dp"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            />
-
-        <Button
-            style="@android:style/Widget.Material.Button.Borderless"
-            android:id="@+id/cancelButton"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:text="@string/cancel"
-            android:layout_marginStart="16dp"
-            android:layout_marginEnd="16dp"
-            android:layout_marginTop="16dp"/>
-
-        <View android:layout_width="match_parent"
-              android:layout_height="0dp"
-              android:layout_weight="0.5"/>
+        <ScrollView
+            android:layout_width="match_parent"
+            android:layout_height="0dp"
+            android:layout_weight="2">
+
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:orientation="vertical">
+
+                <TextView
+                    style="@android:style/TextAppearance.Material.Headline"
+                    android:id="@+id/headerText"
+                    android:layout_marginStart="?attr/confirmDeviceCredentialsSideMargin"
+                    android:layout_marginEnd="?attr/confirmDeviceCredentialsSideMargin"
+                    android:layout_marginTop="?attr/confirmDeviceCredentialsTopMargin"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:textColor="?android:attr/colorAccent"/>
+
+                <TextView
+                    style="@android:style/TextAppearance.Material.Body1"
+                    android:id="@+id/detailsText"
+                    android:layout_marginStart="?attr/confirmDeviceCredentialsSideMargin"
+                    android:layout_marginEnd="?attr/confirmDeviceCredentialsSideMargin"
+                    android:layout_marginTop="12dp"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"/>
+
+                <Button
+                    style="@android:style/Widget.Material.Button.Borderless"
+                    android:id="@+id/cancelButton"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:text="@string/cancel"
+                    android:layout_marginStart="16dp"
+                    android:layout_marginEnd="16dp"
+                    android:layout_marginTop="16dp"/>
+            </LinearLayout>
+
+        </ScrollView>
 
         <com.android.internal.widget.LockPatternView
             android:id="@+id/lockPattern"
             android:layout_width="312dp"
-            android:layout_height="312dp"
-            android:layout_gravity="center_horizontal"
-            android:layout_marginTop="-46dp"
-            android:layout_marginBottom="-46dp"/>
+            android:layout_height="0dp"
+            android:layout_weight="3"
+            android:layout_gravity="center_horizontal"/>
 
         <LinearLayout
             android:layout_width="match_parent"