忙活了一个下午才研究出来的。。。。
学习Android的Intent时候跟着Mars老师做简单的乘法程序,在第一个activity输入两个正整数,通过一个intent跳转到第二个intent,在第二个activity中使用一个TextView的setText()方法显示乘法计算的结果,很简单是吧。
run as android application之后,第一个activity没有问题,可是一旦点击了计算的button,立马崩溃(unfortunately,...has stopped!)
DDMS里面报错: 08-27 06:16:08.517: W/EGL_genymotion(1239): eglSurfaceAttrib not implemented
谷歌查了下,主要是Androidmanifest里面没有注册或者是genymotion自身的问题,有人说使用自带模拟器,勾选use host gpu就可以,试之,继续错误。无奈掏出平板调试,继续错。。。。。基本上一个下午就在找这个错误,时间都浪费了。
这个时候突然在DDMS里面看到一段话: No package identifier when getting value for resource number 0x00000002 终于给我查到了,Android异常, 原来第二个activity里面的TextView在调用setText()方法的时候出问题了 更改之前:
更改之后:
原理我直接照搬别人的了:
主要原因是TextView的setText方法把传入的int类型的percent当做资源Id到项目中查询资源,而资源中却找不到相应的数值,就会报NotFoundException的错误。
完事。
|
|
来自: gearss > 《textview》