2013年5月3日

安卓开发之创建可复用的UI组件【转】

摘要: Android平台提供了广泛的UI可视组件---widget,把这些小的可视的构件组合到一起,就可以给用户提供复杂而有用的界面。但是,应用程序经常需要一些高级可视组件,要满足这样的需求,并要达到高效的目的,可以把一些标准的widget组合成一个新的可复用的组件。 例如,包含一个进度条和一个取消按钮的操作进度表示组件;包含两个按钮的面板(取消和确认操作);带有一个图标、标题和说明的面板等等。通过编写定制的View类能够很容易的创建UI组件,但是使用XML会更加容易。 在Android XML布局文件中,每个标签都对应于一个实际的类实例(这个类始终是View类的子类),Android的UI工具.. 阅读全文

posted @ 2013-05-03 10:43 liyingming 阅读(268) 评论(0) 推荐(0) 编辑

2013年5月2日

安卓开发之SkBitmap的内存管理分析【转】

摘要: 安卓使用的2D图形引擎skia,是一个高效的2D矢量图形库,google已经把skia开源了。 SkBitmap是skia中很重要的一个类,很多画图动作涉及到SkBitmap,它封装了与位图相关的一系列操作,了解它的内存管理策略有助于我们更好的使用它,了解它的初衷是要想实现对skia中的blitter进行硬件加速。 1. SkBitmap的类结构: 2. SkBitmap的内嵌类Allocator Allocator是SkBitmap的内嵌类,其实只有一个成员函数:allocPixelRef(),所以把它理解为一个接口更合适,SkBitmap使用Allocator的派生类–HeapAl... 阅读全文

posted @ 2013-05-02 09:20 liyingming 阅读(810) 评论(0) 推荐(0) 编辑

2013年5月1日

安卓开发中动态添加lsitView 代码实例【转】

摘要: 这个很简单 就是为了说明别忘了adapter.notifyDataSetChanged(); 唤醒一下,其实这个唤醒也就是在button下用 或者在别的控件下调用 如果是在getView下就不必了 java代码: public class DynamicListItems extends ListActivity { private static final String ITEM_KEY = "key"; ArrayList<HashMap<String, String>> list = new ArrayList<HashMap<St 阅读全文

posted @ 2013-05-01 21:30 liyingming 阅读(200) 评论(0) 推荐(0) 编辑

安卓开发教程之判断出屏的方法【转】

摘要: 在做安卓开发实际项目当中,尤其是在编写游戏时,我们一定要判断一下子弹的问题,应为这个是非常重要的。如果不判断的话,就会给玩家视觉上带来不好的效果。 Java代码: for (int i = 0; i < enemy_bullets.length; i++) { enemy_bullets[i].paint(c); if (enemy_bullets[i].getX() < 0|| enemy_bullets[i].getX() - 5 > max_width || enemy_bullets[i].getY() < 0|| enemy_bullets[i].getY() 阅读全文

posted @ 2013-05-01 21:29 liyingming 阅读(178) 评论(0) 推荐(0) 编辑

2013年4月29日

android判断指定软件是否安装【转】

摘要: 在android开发过程中,我们会遇到要检查一个已知包名的android软件是否已经安装,通过以下代码即可实现判断: 1 PackageInfo packageInfo; 2 try { 3 packageInfo = this.getPackageManager().getPackageInfo(packageName, 0); 4 5 } catch (NameNotFoundException e) { 6 packageInfo = null; 7 e... 阅读全文

posted @ 2013-04-29 19:45 liyingming 阅读(329) 评论(0) 推荐(0) 编辑

2013年4月28日

java解析php函数json_encode unicode 编码问题【转】

摘要: android开发中在和服务器端接口对接时出现编码问题,从服务器端获取到的数据是"\u8bbe\u59071ID-\u8bbe\u59071\u540d\u79f0;\u8bbe\u59073id-\u8bbe\u59073\u540d\u79f0;\u8bbe\u59077id-\u8bbe\u59077\u540d\u79f0" 接口是通过php函数中json_encode进行编码后返回的,在客户端通过java.net.URLdecoder.decode()解码不管用,但是直接将以上字符串复制到decode()方法中可以正常解码,把接收到的字符串经过utf-8编码后不管 阅读全文

posted @ 2013-04-28 15:02 liyingming 阅读(430) 评论(0) 推荐(0) 编辑

android 设置apk文件默认安装sdcard中【转】

摘要: 在android sdk2.2以后加入在SD卡上存储程序设置,设置很简单,只需要在xml配置文件manifest节点中加入android:installLocation="preferExternal"就可以了,表示程序默认安装在sd扩展卡中。 阅读全文

posted @ 2013-04-28 15:01 liyingming 阅读(177) 评论(0) 推荐(0) 编辑

2013年4月26日

android调用webservice接口应用实例【转】

摘要: public String userLogin(String userName, String pwd) { String url = "http://xx.xx.com/services/User"; String nameSpace = "http://xx.xx.com"; String SOAP_ACTION = "http:/xx.xx.com/services/User/login"; String method = "login"; String result = ""; Soap 阅读全文

posted @ 2013-04-26 09:23 liyingming 阅读(248) 评论(0) 推荐(0) 编辑

2013年4月25日

Android软键盘弹出,界面整体上移的问题【转】

摘要: AndroidManifest.xml文件中界面对应的<activity>里加入android:windowSoftInputMode="adjustPan"键盘就会覆盖屏幕android:windowSoftInputMode="stateVisible|adjustResize"屏幕整体上移 阅读全文

posted @ 2013-04-25 09:30 liyingming 阅读(169) 评论(0) 推荐(0) 编辑

2013年4月24日

android java.lang.IllegalArgumentException: The observer is null.异常解决【转】

摘要: 今天把android系统更新到4.0后运行以前开发的程序,出现java.lang.IllegalArgumentException: The observer is null.异常错误,在网上查找出错原因和解决方案,找到两篇解释的比较清楚的文章,具体内容如下:一,原因:是因为4.0系统android.widget.AbsListView.onDetachedFromWindow第一次调用的时候会把observer设置为null,onDetachedFromWindow方法的作用是当view离开窗口时调用,而我在每次view离开窗口并没有销毁,因为后面要用到,所以当第二次重用view的时候在re 阅读全文

posted @ 2013-04-24 09:08 liyingming 阅读(250) 评论(0) 推荐(0) 编辑

导航