diff --git a/qmui/src/main/java/com/qmuiteam/qmui/util/QMUIResHelper.java b/qmui/src/main/java/com/qmuiteam/qmui/util/QMUIResHelper.java
index fb302b28..f81d52ff 100644
--- a/qmui/src/main/java/com/qmuiteam/qmui/util/QMUIResHelper.java
+++ b/qmui/src/main/java/com/qmuiteam/qmui/util/QMUIResHelper.java
@@ -94,7 +94,7 @@ public class QMUIResHelper {
}else if(attr == R.styleable.QMUITextCommonStyleDef_android_maxLines){
textView.setMaxLines(a.getInt(attr, -1));
}else if(attr == R.styleable.QMUITextCommonStyleDef_android_background){
- textView.setBackground(a.getDrawable(attr));
+ QMUIViewHelper.setBackgroundKeepingPadding(textView, a.getDrawable(attr));
}else if(attr == R.styleable.QMUITextCommonStyleDef_android_lineSpacingExtra){
textView.setLineSpacing(a.getDimensionPixelSize(attr, 0), 1f);
}else if(attr == R.styleable.QMUITextCommonStyleDef_android_drawablePadding){
diff --git a/qmui/src/main/java/com/qmuiteam/qmui/widget/dialog/QMUIDialog.java b/qmui/src/main/java/com/qmuiteam/qmui/widget/dialog/QMUIDialog.java
index 6ea21330..28ed6acb 100644
--- a/qmui/src/main/java/com/qmuiteam/qmui/widget/dialog/QMUIDialog.java
+++ b/qmui/src/main/java/com/qmuiteam/qmui/widget/dialog/QMUIDialog.java
@@ -307,8 +307,10 @@ public class QMUIDialog extends Dialog {
mScrollContainer = new QMUIWrapContentScrollView(context);
mTextView = new QMUISpanTouchFixTextView(context);
MessageDialogBuilder.assignMessageTvWithAttr(mTextView, hasTitle(), R.attr.qmui_dialog_message_content_style);
-
- mScrollContainer.addView(mTextView);
+ ScrollView.LayoutParams lp = new ScrollView.LayoutParams(
+ ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
+ lp.gravity = mTextView.getGravity();
+ mScrollContainer.addView(mTextView, lp);
mScrollContainer.setVerticalScrollBarEnabled(false);
mScrollContainer.setMaxHeight(getContentAreaMaxHeight());
mTextView.setText(mMessage);
diff --git a/qmui/src/main/res/values/qmui_style_widget.xml b/qmui/src/main/res/values/qmui_style_widget.xml
index 637d2233..e8187e88 100644
--- a/qmui/src/main/res/values/qmui_style_widget.xml
+++ b/qmui/src/main/res/values/qmui_style_widget.xml
@@ -190,6 +190,7 @@
- 28dp
- end
- 3dp
+ - 8dp
- 27dp
diff --git a/qmuidemo/src/main/java/com/qmuiteam/qmuidemo/fragment/components/QDDialogFragment.java b/qmuidemo/src/main/java/com/qmuiteam/qmuidemo/fragment/components/QDDialogFragment.java
index 78326975..0d6b6e7d 100644
--- a/qmuidemo/src/main/java/com/qmuiteam/qmuidemo/fragment/components/QDDialogFragment.java
+++ b/qmuidemo/src/main/java/com/qmuiteam/qmuidemo/fragment/components/QDDialogFragment.java
@@ -4,6 +4,7 @@ import android.content.Context;
import android.content.DialogInterface;
import android.support.v4.content.ContextCompat;
import android.text.InputType;
+import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@@ -21,6 +22,7 @@ import com.qmuiteam.qmui.util.QMUIKeyboardHelper;
import com.qmuiteam.qmui.util.QMUIResHelper;
import com.qmuiteam.qmui.util.QMUIViewHelper;
import com.qmuiteam.qmui.widget.QMUITopBar;
+import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
import com.qmuiteam.qmui.widget.dialog.QMUIDialog;
import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction;
import com.qmuiteam.qmuidemo.manager.QDDataManager;
@@ -47,6 +49,7 @@ public class QDDialogFragment extends BaseFragment {
@BindView(R.id.listview) ListView mListView;
private QDItemDescription mQDItemDescription;
+ private int mCurrentDialogStyle = com.qmuiteam.qmui.R.style.QMUI_Dialog;
@Override
protected View onCreateView() {
@@ -66,6 +69,14 @@ public class QDDialogFragment extends BaseFragment {
}
});
+ mTopBar.addRightImageButton(R.mipmap.icon_topbar_overflow, R.id.topbar_right_change_button)
+ .setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ showBottomSheet();
+ }
+ });
+
mTopBar.setTitle(mQDItemDescription.getName());
}
@@ -145,7 +156,7 @@ public class QDDialogFragment extends BaseFragment {
Toast.makeText(getActivity(), "发送成功", Toast.LENGTH_SHORT).show();
}
})
- .show();
+ .create(mCurrentDialogStyle).show();
}
private void showMessageNegativeDialog() {
@@ -165,7 +176,7 @@ public class QDDialogFragment extends BaseFragment {
dialog.dismiss();
}
})
- .show();
+ .create(mCurrentDialogStyle).show();
}
private void showLongMessageDialog() {
@@ -188,7 +199,7 @@ public class QDDialogFragment extends BaseFragment {
dialog.dismiss();
}
})
- .show();
+ .create(mCurrentDialogStyle).show();
}
private void showConfirmMessageDialog() {
@@ -208,7 +219,7 @@ public class QDDialogFragment extends BaseFragment {
dialog.dismiss();
}
})
- .show();
+ .create(mCurrentDialogStyle).show();
}
private void showMenuDialog() {
@@ -221,7 +232,7 @@ public class QDDialogFragment extends BaseFragment {
dialog.dismiss();
}
})
- .show();
+ .create(mCurrentDialogStyle).show();
}
private void showSingleChoiceDialog() {
@@ -236,7 +247,7 @@ public class QDDialogFragment extends BaseFragment {
dialog.dismiss();
}
})
- .show();
+ .create(mCurrentDialogStyle).show();
}
private void showMultiChoiceDialog() {
@@ -266,7 +277,7 @@ public class QDDialogFragment extends BaseFragment {
dialog.dismiss();
}
});
- builder.show();
+ builder.create(mCurrentDialogStyle).show();
}
private void showNumerousMultiChoiceDialog() {
@@ -300,7 +311,7 @@ public class QDDialogFragment extends BaseFragment {
dialog.dismiss();
}
});
- builder.show();
+ builder.create(mCurrentDialogStyle).show();
}
private void showEditTextDialog() {
@@ -326,7 +337,7 @@ public class QDDialogFragment extends BaseFragment {
}
}
})
- .show();
+ .create(mCurrentDialogStyle).show();
}
private void showAutoDialog() {
@@ -344,7 +355,7 @@ public class QDDialogFragment extends BaseFragment {
dialog.dismiss();
}
});
- autoTestDialogBuilder.show();
+ autoTestDialogBuilder.create(mCurrentDialogStyle).show();
QMUIKeyboardHelper.showKeyboard(autoTestDialogBuilder.getEditText(), true);
}
@@ -387,4 +398,26 @@ public class QDDialogFragment extends BaseFragment {
return layout;
}
}
+
+
+ private void showBottomSheet() {
+ new QMUIBottomSheet.BottomListSheetBuilder(getContext())
+ .addItem("使用 QMUI 默认 Dialog 样式")
+ .addItem("自定义样式")
+ .setOnSheetItemClickListener(new QMUIBottomSheet.BottomListSheetBuilder.OnSheetItemClickListener() {
+ @Override
+ public void onClick(QMUIBottomSheet dialog, View itemView, int position, String tag) {
+ switch (position) {
+ case 0:
+ mCurrentDialogStyle = com.qmuiteam.qmui.R.style.QMUI_Dialog;
+ break;
+ case 1:
+ mCurrentDialogStyle = R.style.DialogTheme2;
+ break;
+ }
+ dialog.dismiss();
+ }
+ })
+ .build().show();
+ }
}
diff --git a/qmuidemo/src/main/res/values/styles.xml b/qmuidemo/src/main/res/values/styles.xml
index c669ee3d..3a11fdc2 100644
--- a/qmuidemo/src/main/res/values/styles.xml
+++ b/qmuidemo/src/main/res/values/styles.xml
@@ -83,4 +83,75 @@
- @drawable/qmui_divider_bottom_bitmap
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+