代码改变世界

Unable to resume activity : android.database.StaleDataException: Attempted to access a cursor after it has been closed. 异常

2013-05-17 19:21 by 清炒白菜, 4190 阅读, 0 推荐, 收藏, 编辑
摘要:一般用Cursor后, 就立即close()了,但是在用managedQuery的时候, 却不能主动调用close()方法, 否则在Android 4.0+的系统上, 会发生崩溃google的文档是这么写的Warning: Do not call close() on a cursor obtained using this method, because the activity will do that for you at the appropriate time. However, if you call stopManagingCursor(Cursor) on a cursor f 阅读全文

Android的匿名Handler类引起的内存泄露

2013-05-16 01:13 by 清炒白菜, 381 阅读, 0 推荐, 收藏, 编辑
摘要:具体原因参考这篇博客http://blog.chengyunfeng.com/?p=468上文中虽然给出了解决方案, 但是在实际操作的时候, 还是遇到一些问题。比如在Activity中的Field字段, 原先用匿名handler类 , 是可以直接访问的, 现在改了之后, 在MyHandler类中不能直接访问了。暂时想到的办法是, 强制转换WeakReference<Activity> mActi... 阅读全文

计算2个经纬度之间的距离

2012-06-23 19:31 by 清炒白菜, 323 阅读, 0 推荐, 收藏, 编辑
摘要:在Android的Location类中,有现成的distanceTo方法。 看了源代码,比较复杂, 没仔细研究, 应该是针对地球是椭远。详细资料查阅wiki的Great-circle distance条目简单修正的公式如下:已知球面上2点分别为P1(Lat1, Lng1) , P2(Lat2, Lng2)2点间的距离是 公式的单位都是弧度。 阅读全文

用bcp导入DateTime类型的数据

2012-04-19 11:53 by 清炒白菜, 580 阅读, 0 推荐, 收藏, 编辑
摘要:时间类型的数据, 必须用ToString("yyyy-MM-dd HH:mm:ss.fff")方式来格式化,否则会bcp导入出错参考:String Format for DateTime [C#]bcp导入导出数据发生异常解决方案用bcp导入大量数据(代替INSERT) 阅读全文

Linux下提示“omitting directory”错误的解决办法

2012-01-24 16:12 by 清炒白菜, 921 阅读, 0 推荐, 收藏, 编辑
摘要:cp -R 源目录 目标目录加上-R开关, 就能连带子目录一起复制, 不会再提示"Ommiting directory"的错误了。 阅读全文

Android的"返回“功能

2011-12-07 10:04 by 清炒白菜, 265 阅读, 0 推荐, 收藏, 编辑
摘要:用代码实现硬件Back按钮的“返回”效果super.onBackPressed(); 阅读全文

EditText获得焦点后,如何关闭软键盘

2011-09-20 23:01 by 清炒白菜, 734 阅读, 0 推荐, 收藏, 编辑
摘要:EditText获得焦点后, 会自动打开软键盘,这时候想让“EditText失去焦点,并关闭软键盘”, 暂时还没有找到完美的解决方案,因为EditText失去焦点功能未能完美实现。所以采用了OnTouch Activity上某个大块控件,强制关闭软键盘的方法。 getListView().setOnTouchListener(new OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { hideSoftKeyboard(); return fal... 阅读全文

获取当前Activity的Root View

2011-09-20 22:56 by 清炒白菜, 2472 阅读, 0 推荐, 收藏, 编辑
摘要:1.((ViewGroup)findViewById(android.R.id.content)).getChildAt(0)2. findViewById(R.id.xxxxxx) -- xxxxxx是对应xml文件中的根控件可以通过getId()方法验证1,2返回的对象是否相同。 阅读全文

用代码动态设置ImageView的align布局

2011-09-15 20:31 by 清炒白菜, 924 阅读, 0 推荐, 收藏, 编辑
摘要:LinearLayout rootLayout = (LinearLayout)findViewById(R.id.root_layout);LinearLayout.LayoutParams params = new LinearLayout.LayoutParams( LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);params.gravity = Gravity.RIGHT;ImageView btnSend = new ImageView (this); btnSend.setLayoutParams(params);r... 阅读全文

Android中Sqlite数据库多线程并发问题

2011-07-14 00:09 by 清炒白菜, 6134 阅读, 0 推荐, 收藏, 编辑
摘要:最近在做一个Android项目, 为了改善用户体验,把原先必须让用户“等待”的过程改成在新线程中异步执行。但是这样做遇到了多个线程同时需要写Sqlite数据库,导致操作数据库失败。本人对JAVA并不熟悉,只接触了2个多月(纯粹为了Android项目, 才开始接触JAVA), 在网上搜了一下, 发现JAVA在线程同步方面提供的功能相对于C#真少,只找到synchronized关键字, 而且还不提供timeout机制, 不过经过测试, 至少解决了目前的需求。问题需求:1. Android中, 对Sqlite数据库操作, 需要自己实现一个继承自SQLiteOpenHelper的类2. 实现类中, 对 阅读全文