OSDN Git Service

Align the search view with the setting items
authorVictor Chang <vichang@google.com>
Mon, 12 Mar 2018 15:41:19 +0000 (15:41 +0000)
committerVictor Chang <vichang@google.com>
Mon, 12 Mar 2018 19:40:31 +0000 (19:40 +0000)
- Remove the margin and paddings in the search view

Bug: 73952488
Test: m RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.datetime.timezone
Change-Id: I67fb420cf77fc427a550449a053f80dcf66d16ff

src/com/android/settings/datetime/timezone/BaseTimeZonePicker.java

index f20a110..032e2d2 100644 (file)
@@ -25,7 +25,9 @@ import android.view.MenuInflater;
 import android.view.MenuItem;
 import android.view.View;
 import android.view.ViewGroup;
+import android.widget.LinearLayout;
 import android.widget.SearchView;
+import android.widget.TextView;
 
 import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
 import com.android.settings.R;
@@ -130,6 +132,19 @@ public abstract class BaseTimeZonePicker extends InstrumentedFragment
                 mSearchView.setActivated(true);
                 mSearchView.setQuery("", true /* submit */);
             }
+
+            // Set zero margin and padding to align with the text horizontally in the preference
+            final TextView searchViewView = (TextView) mSearchView.findViewById(
+                    com.android.internal.R.id.search_src_text);
+            searchViewView.setPadding(0, searchViewView.getPaddingTop(), 0,
+                    searchViewView.getPaddingBottom());
+            final View editFrame = mSearchView.findViewById(
+                    com.android.internal.R.id.search_edit_frame);
+            final LinearLayout.LayoutParams params = (LinearLayout.LayoutParams) editFrame
+                    .getLayoutParams();
+            params.setMarginStart(0);
+            params.setMarginEnd(0);
+            editFrame.setLayoutParams(params);
         }
     }