
一位android初学者在模拟器上运行代码时遇到闪退问题,以下是他提供的代码:
public class mainactivity extends appcompatactivity { final webview webview = findviewbyid(r.id.webview); // ...}
问题:
问题出在代码中过早调用findviewbyid()函数。在调用setcontentview()设置布局之前,findviewbyid()无法找到任何视图。
ima.copilot
腾讯大混元模型推出的智能工作台产品,提供知识库管理、AI问答、智能写作等功能
317 查看详情
解决方案:
将findviewbyid()调用移动到setcontentview()之后,如下所示:
public class MainActivity extends AppCompatActivity { WebView webView; // ... @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); this.webView = findViewById(R.id.WebView); // ... }}
现在,setcontentview()将加载布局并渲染视图,然后findviewbyid()才能正确找到webview视图。这样就可以解决闪退问题。
以上就是Android软件闪退:为什么代码在setContentView()之前调用findViewById()会导致闪退?的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/884025.html
微信扫一扫
支付宝扫一扫