我意识到这个问题有点奇怪,但我想停止使用已弃用的选项菜单并切换到操作栏。不幸的是,要做到这一点,我必须使用Holo主题,它带有与以前不同的AlertDialog设计。
这个新设计打破了我的UI外观。是否可以在全息样式的活动中创建旧样式的对话框?
相关问题:除了 AlertDialog 之外,是否有其他东西是一个能够显示我自己的布局的弹出窗口,并且我的自定义布局周围没有边框和其他主题定义的内容?
根据 AndroidManifest 文件中设置的 minSDKVersion,您可以为对话框选择一个主题。您可以将它们设置为Holo/设备默认值,但要做到这一点,您的minSdk值应该是10+,即使我认为要使用DeviceDefault,它也应该是JellyBean。
如果您想创建自己的布局并在没有任何边框等的情况下使用它,这会破坏您的设计,您应该使用对话框而不是 AlertDialog 并对其进行自定义。你可以做这样的事情:
final Dialog alert = new Dialog(FingerPaintActivity.this, android.R.style.Theme_Light_Panel);
alert.requestWindowFeature(Window.FEATURE_NO_TITLE); // no title
alert.getWindow().getAttributes().windowAnimations = R.style.PauseDialogAnimation; // this is used for custom animation when dialog is showing and hiding
alert.setContentView(getLayoutInflater().inflate(R.layout.stamps, null)); // here is your custom layout
alert.getWindow().setLayout(width-50, (height-100)); // set height / width
当您想在按钮中触发onl单击时,例如放置在R.layout.stamps中的按钮,如示例中所示,您应该这样做:
Button dog = (Button) alert.findViewById(R.id.dog_stamp);
您可以创建自定义AlertDialog
。
例如:http://www.mkyong.com/android/android-custom-dialog-example/