Android修改自定义Dialog的大小
重点代码
view.setMinimumWidth();
public class TestDialog extends Dialog {
private Activity mContext;
public TestDialog(Context context) {
super(context, R.style.test_dialog_style);
mContext = (Activity) context;
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
View view = View.inflate(getContext(), R.layout.dialog_test, null);
// 重点代码
view.setMinimumWidth((int) (mContext.getWindowManager()
.getDefaultDisplay().getWidth() * 0.5));
setContentView(view);
}
}
未生效的代码
public class MainActivity extends AppCompatActivity {
TestDialog testDialog = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
testDialog = new TestDialog(this);
// 没有生效
Window window = testDialog.getWindow();
WindowManager.LayoutParams lp = window.getAttributes();
lp.height = 800;
lp.width = 800;
lp.gravity = Gravity.CENTER;
window.setAttributes(lp);
testDialog.show();
}
}