欢迎访问 生活随笔!

凯发ag旗舰厅登录网址下载

当前位置: 凯发ag旗舰厅登录网址下载 > 运维知识 > android >内容正文

android

android学习笔记(5)-凯发ag旗舰厅登录网址下载

发布时间:2025/1/21 android 42 豆豆
凯发ag旗舰厅登录网址下载 收集整理的这篇文章主要介绍了 android学习笔记(5)----启动 theme.dialog 主题的activity时程序崩溃的解决办法 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

新建了一个android studio工程,在mainactivity的主界面中添加了两个按钮,点击其中一个按钮用来启动 normalactivity,点击另一按钮用来启动dialogactivity. 其中,normalactivity和dialogactivity都是很简单的界面,只是在androidmanifest.xml中,对dialogactivity添加主题 android:theme="@android:style/theme.dialog, androidmanifest.xml文件如下:

mainactivity的 oncreate()函数如下:

@overrideprotected void oncreate(bundle savedinstancestate) {super.oncreate(savedinstancestate);setcontentview(r.layout.activity_main);button startnormalactivity=(button)findviewbyid(r.id.start_normal_activity);button startdialogactivity=(button)findviewbyid(r.id.start_dialog_activity);startnormalactivity.setonclicklistener(new view.onclicklistener(){@overridepublic void onclick(view view) {intent intent=new intent(mainactivity.this ,normalactivity.class);startactivity(intent);}});startdialogactivity.setonclicklistener(new view.onclicklistener() {@overridepublic void onclick(view view) {intent intent=new intent(mainactivity.this,dialogactivity.class);startactivity(intent);}});}

dialogactivity 定义如下:

public class dialogactivity extends appcompatactivity {@overrideprotected void oncreate(bundle savedinstancestate) {super.oncreate(savedinstancestate);setcontentview(r.layout.activity_dialog);} }

程序主界面如下:

当单击 'start dialogactivity' 按钮时,程序便停止运行了。百思不得其解,后来终于在网上别人的回答中找到了灵感:

解决方法1

将dialogactivity的super class改成 activity 即可。

解决方法2

将androidmanifest.xml中 .dialogactivity 的theme改成如下样式:

由于在较新版本的android studio中,默认的activity的super class 基本都是 appcompatactivity,所以建议保留默认生成的 super class,采用方法2来解决程序崩溃的问题。

转载于:https://www.cnblogs.com/dongling/p/6476308.html

总结

以上是凯发ag旗舰厅登录网址下载为你收集整理的android学习笔记(5)----启动 theme.dialog 主题的activity时程序崩溃的解决办法的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得凯发ag旗舰厅登录网址下载网站内容还不错,欢迎将凯发ag旗舰厅登录网址下载推荐给好友。

网站地图