android之论setContentView(R.layout.activity_main)位置的重要性
16lz
2021-01-25
时间:2017/3/16
首先声明我是一个Android开发刚入门的菜鸟,只是了解android基本控件及开发步骤。今天尝试开发一款基于android的点菜App,然而在第一个登陆界面就被卡了半天。
在MainActivity内获取登录按钮控件并设置相应监听事件后,尝试运行一下自己精心设计的登陆界面,Bug出现了,自己的小程序莫名地停止运行。查看了一下控制台输出错误,内容很长,核心错误提示就是NullPointException。一脸懵逼,这TM是什么鬼,后来去网上查了一下,大概意思就是出现了空指针,其实是我没有获取到Button按钮。怎么可能,我会傻到不初始化Button就设置监听事件吗?
特意查看了一下关键代码:
btn_Reset=(Button)findViewById(R.id.btn_reset);
我明明获取按钮了 怎么就是没有获取到?后来就认真检查下代码,发现btn_Reset=(Button)findViewById(R.id.btn_reset);这行代码在setContentView(R.layout.activity_main)的前面,会不会是这个原因造成的呢?于是我尝试把setContentView(R.layout.activity_main)放到最前面,再次运行下程序,居然没闪退而且响应了该事件,顿时心花怒么会这样呢?因为你不先设置布局就无法及时获取到该布局相关控件。
最后贴上来我设计的登陆界面吧
更多相关文章
- android 动态修改 TextView的width属性
- Andoid Studio-android开发03-点击按钮Button-在TextView上显示
- Android基于Pull方式解析xml的方法详解
- android中采用Pull解析XML文档
- Android中通过AsyncTask类来制作炫酷进度条的实例教程
- Android(安卓)通知栏Notification的整合 全面学习
- Android登录界面的实现代码分享
- Android自定义进度条——圆角横向进度条
- android webview图片文件上传兼容性问题——上传控件点击无效的