
本文实例总结了AndroID开发的常见错误。分享给大家供大家参考。具体如下:
错误1:
在intent中添加了一个内容,在调用getStringExtra读取的时候,总是报错。代码如下:
// back按钮 button btnBack = (button) findVIEwByID(R.ID.btnActivity2Back);btnBack.setonClickListener(new OnClickListener() { @OverrIDe public voID onClick(VIEw v) { Intent intent = new Intent(); intent.putExtra("from",2); setResult(RESulT_OK,intent); finish(); } });其中调用了intent的putExtra方法。
读取代码如下:
@OverrIDe protected voID onActivityResult(int requestCode,int resultCode,Intent data) { TextVIEw tvIEw = (TextVIEw) findVIEwByID(R.ID.textVIEwResult1); if (data != null) { tvIEw.setText("从" + data.getStringExtra("from") + "返回!"); } super.onActivityResult(requestCode,resultCode,data); }调用了getStringExtra来读取数据。这里会报错。
错误原因:
在putExtra的时候,代码intent.putExtra("from",2);中,2并不是一个字符串,而是一个数字。因此,在读取的时候,调用getStringExtra报错了。
如果这么写:intent.putExtra("from",2 + "");就不会有问题。
错误2:
在做ListvIEw使用simplecursoradapter的时候,遇到下面的这个问题。
java.lang.UnsupportedOperationException: addVIEw(VIEw,LayoutParams) is not supported in AdapterVIEw
这个错误原因是我在main.xml布局文件中,将TextVIEw控件包含在了<ListVIEw>控件内部而出现的错误,在设计中用来显示数据的控件,最好放在另外一个布局文件中。
比如说,我的ListvIEw的xml为:
<?xml version="1.0" enCoding="utf-8"?> <linearLayout xmlns:androID="http://schemas.androID.com/apk/res/androID" androID:layout_wIDth="fill_parent" androID:layout_height="fill_parent" androID:orIEntation="vertical" > <button androID:ID="@+ID/btnInitData5000" androID:layout_wIDth="wrap_content" androID:layout_height="wrap_content" androID:text="初始化数据5000条" /> <button androID:ID="@+ID/btnInitListVIEw" androID:layout_wIDth="wrap_content" androID:layout_height="wrap_content" androID:text="读取数据初始化ListVIEw" /> <ListVIEw androID:ID="@+ID/ListVIEw4" androID:layout_wIDth="fill_parent" androID:layout_height="wrap_content" > </ListVIEw> </linearLayout>
ListvIEw的xml中只写ListvIEw的xml,而把每行要显示的内容,放在了myrow.xml中,如下:
<?xml version="1.0" enCoding="utf-8"?> <linearLayout xmlns:androID="http://schemas.androID.com/apk/res/androID" androID:layout_wIDth="match_parent" androID:layout_height="wrap_content" > <TextVIEw androID:ID="@+ID/textVIEwItemname" androID:layout_wIDth="fill_parent" androID:layout_height="wrap_content" /> </linearLayout>
错误3:
从ListvIEw的一个item点击,跳转到另外一个activity的时候,动画效果是不对的。
startActivity(intent); // finish(); Log.e("mason","gongneng ani called"); overrIDePendingTransition(R.anim.slIDe_out_right,R.anim.slIDe_in_left);如上面的代码。但是如果先调用finish()函数,动画效果就对了。但是此时有个问题。进入了新的activity之后,按back键,不能回到原来的activity了。这是因为原来的activity调用了finish函数,finish函数相当于用户按下了back键。相当于告诉了安卓系统,这个activity可以被回收了(此时在安卓activity栈中这个activity也不存在了)。
希望本文所述对大家的AndroID程序设计有所帮助。
总结以上是内存溢出为你收集整理的Android开发常见错误小结全部内容,希望文章能够帮你解决Android开发常见错误小结所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)