Преглед изворни кода

Added a little padding to the top and bottom of list dialogs for a better symmetrical look, top padding zeroed out when there's a title.

Aidan Follestad пре 10 година
родитељ
комит
ea0eb2ec24

+ 6 - 0
library/src/main/java/com/afollestad/materialdialogs/MaterialDialog.java

@@ -256,6 +256,12 @@ public class MaterialDialog extends DialogBase implements View.OnClickListener,
             listView = (ListView) view.findViewById(R.id.contentListView);
             listView.setSelector(getListSelector());
 
+            if (mBuilder.title != null) {
+                // Cancel out top padding if there's a title
+                listView.setPadding(listView.getPaddingLeft(), 0,
+                        listView.getPaddingRight(), listView.getPaddingBottom());
+            }
+
             if (!adapterProvided) {
                 // Determine list type
                 if (mBuilder.listCallbackSingleChoice != null) {

+ 5 - 1
library/src/main/res/layout/md_dialog.xml

@@ -72,13 +72,17 @@
             android:layout_height="wrap_content"
             android:visibility="gone">
 
+            <!-- Top padding cancelled out in code if there's a title -->
             <ListView
                 android:id="@+id/contentListView"
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
                 android:scrollbarStyle="outsideOverlay"
                 android:divider="@null"
-                android:dividerHeight="0dp" />
+                android:dividerHeight="0dp"
+                android:clipToPadding="false"
+                android:paddingTop="12dp"
+                android:paddingBottom="12dp" />
 
         </FrameLayout>
 

+ 1 - 1
sample/src/main/java/com/afollestad/materialdialogssample/MainActivity.java

@@ -315,7 +315,7 @@ public class MainActivity extends ActionBarActivity implements FolderSelectorDia
 
     private void showListNoTitle() {
         new MaterialDialog.Builder(this)
-                .items(R.array.states)
+                .items(R.array.socialNetworks)
                 .itemsCallback(new MaterialDialog.ListCallback() {
                     @Override
                     public void onSelection(MaterialDialog dialog, View view, int which, CharSequence text) {