BUG List 随时更新

1. 有哪几种方式,可以在非UI线程中,通知UI线程更新界面?
    方式一:使用广播

    方式二:使用回调函数,这个时候需要利用Handler,因为非UI线程不能更新UI界面。

    首先,预先定义一个主线程的Handler

  private Handler mainUIHandler = new Handler();

    然后,在回调的时候,使用该Handler,向UI线程中扔一个Runnable对象

  mainUIHandler.post(new Runnable() {
     @Override
     public void run() {
         // 更新界面        
     }
  });

    handler也可以这样构造

Handler handler = new Handler(Looper.getMainLooper());

2. 手机的唯一标识

    这篇文章中讲的比较好了,http://luhuajcdd.iteye.com/blog/1608746,http://blog.csdn.net/easy_gemini/article/details/8601482
   上面文章中的方法可以比较好的给出唯一标识。deviced id:需要读取手机状态的权限,pad没有这个,个别手机也可能没有。 Sim Num:也需要读取手机状态的权限。MacAddress:Wifi关闭的时候可能读不到。AndroidId: wipe重置之后,会改变。如果都没有的时候,可以用随机的UUID。有的话,用其中的一个产生一个UUID。产生UUID保存到SharedPreference即可。

     代码示例,

3. 页面返回的时候,在哪里setResult

     onBackPressed,返回键里面可以设置,但是actionbar的返回按钮,不会触发onBackPressed。

     finish,super.finish会设置result,只要再finish里面的super.finish之前setResult即可。

    @Override
    public void finish() {
        try {
            // setResult
        } catch (Exception e) {
            L.e(this, e);
        }
        super.finish();
    }

4. 如何去掉ListView滚动到底部或者顶部的渐变(滚动到顶继续按住的时候显示)

    if (Build.VERSION.SDK_INT >= 9) {
        mSHList.setOverScrollMode(View.OVER_SCROLL_NEVER); // api level 9以上才能调用
    }

    关机overscroll,可以参见,关于android2.3的overscroll http://blog.csdn.net/zouxueping/article/details/6832805

4. 如何去掉ListView上边缘与下边缘阴影(滚动过程中和滚动结束后都有显示)

android:fadingEdge="none"

5. 字符串安装拼音排序   

String chLeftName = new String(leftName.getBytes("GB2312"), "ISO-8859-1");
String chRightName = new String(rightName.getBytes("GB2312"), "ISO-8859-1");
return chLeftName.compareTo(chRightName);

编码由很多种,Java的自身编码是Unicode,为了实现Unicode,一个char两个字节,而C++里面是一个char一个字节,别混淆了。String.compareTo是根据字符串的unicode进行比较的。unicode和拼音无关,所以直接进行compareTo是不能实现拼音排序的。
但是gb2312是一种区位编码,两个字节表示一个字,前面划出94个区,后面划出94个区,可以实现排序。但是要怎么做呢?
首先我们用getBytes方法,得到字符串的gb2312编码数组,然后直接比较数组就可以了,但是数组比较比较麻烦,有没有办法直接使用compareTo呢?ISO-8859-1是单字节编码,如utf-8是完全兼容的,转化成iso-8859-1之后,就可以直接compareTo了。

6. webview背景色加载闪一下

   用android:background,为webview设置了灰色的背景,但是每次加载html的时候,会先闪一下白色。
   用代码设置了下backgroundcolor就不会闪了。

mNormalView.setBackgroundColor(getResources().getColor(R.color.note_normal_view_bg));



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值