Android tips
2015-10-09 21:33
495 查看
【1】web 服务器返回的数据需以xml或Jason格式,如果直接String读取的话编码不对,equals()无法使用。
【2 ArrayList.add()操作覆盖前面数据】
先看代码:
在上面的代码中,先给board对象的每个元素赋值,然后用add(board)将对象添加到list中。
结果显示,boardList中的每个元素都被最后一个元素覆盖,即每个元素的值都是最后一个元素。
这是因为,add( )方法添加的是对象的引用,每次都更新了这个引用的值,当然list里面的值都一样的。
正确的做法是在每个循环中都new 一个新的board,再对它赋值。
【3】调用系统相册打开指定目录的文件
【4】Android5.1系统上报Package Not Found, OpenCV library package was not found
原因,opencv manager 2.4.9版本太旧,不支持android5.1
换成opencv manager 2..4.11就可以了。
程序里面的opencv库仍然用2.4.9也没问题。
【2 ArrayList.add()操作覆盖前面数据】
先看代码:
Board board = new Board(); List<Board > boardList = new ArrayList<Board >(); XmlPullParserFactory factory = XmlPullParserFactory.newInstance (); XmlPullParser xmlPullParser = factory.newPullParser(); xmlPullParser .setInput( new StringReader(xmlData )); int eventType = xmlPullParser.getEventType(); String date = ""; int num = 0;; String code = ""; while(eventType != XmlPullParser.END_DOCUMENT ){ String nodeName = xmlPullParser.getName(); switch(eventType ){ case XmlPullParser .START_TAG:{ if("date" .equals( nodeName)){ board.getDate(xmlPullParser.nextText()); }else if("num" .equals( nodeName)){ board.getNum(Integer.parseInt (xmlPullParser. nextText())); }else if("code" .equals( nodeName)){ board.getCode(xmlPullParser.nextText()); } break; } case XmlPullParser .END_TAG:{ if(user .equals( nodeName)){ boardList .add( board); Log.i ("TAG", "add list:"+board. getDate()); } break; } default: break; } eventType = xmlPullParser. next(); }
在上面的代码中,先给board对象的每个元素赋值,然后用add(board)将对象添加到list中。
结果显示,boardList中的每个元素都被最后一个元素覆盖,即每个元素的值都是最后一个元素。
这是因为,add( )方法添加的是对象的引用,每次都更新了这个引用的值,当然list里面的值都一样的。
正确的做法是在每个循环中都new 一个新的board,再对它赋值。
【3】调用系统相册打开指定目录的文件
Intent intent = new Intent(Intent .ACTION_VIEW); intent .setDataAndType( Uri.parse ("file://"+ board.getSystemPath ()), "image/*" ); startActivity(intent );
【4】Android5.1系统上报Package Not Found, OpenCV library package was not found
原因,opencv manager 2.4.9版本太旧,不支持android5.1
换成opencv manager 2..4.11就可以了。
程序里面的opencv库仍然用2.4.9也没问题。
相关文章推荐
- Android笔记---ComponentName的用法
- Android自定义捕获异常
- 看一手的有字幕的Google Android开发视频
- Android读书笔记-------View事件体系(2)滑动及弹性滑动
- Android Studio基本设置
- Android 数据传递方式
- Android数据库简单操作之创建数据库
- [Android] 定时器的实现(一)
- Android调用系统相机拍照保存照片很小解决方案
- Android基础入门教程——8.1.1 Android中的13种Drawable小结 Part 1
- Android真正简单的教程-第十二枪(ViewFlipper实现滑动效果)
- Android获取组件的进程名
- Android 布局技巧
- android模仿58筛选下拉框(PopupWindow实现)
- android模仿58筛选下拉框(PopupWindow实现)
- Android学习【8】Android动态更改布局文件
- android:windowSoftInputMode属性详解
- Android中Intent的几种使用方法
- AndroidStudio .9图引用出错
- 如何发布你的Android应用程序