1.逻辑右移与算术右移
4.android 中的Ellipsize
在xml中
android:ellipsize = "end" 省略号在结尾
android:ellipsize = "start" 省略号在开头
android:ellipsize = "middle" 省略号在中间
android:ellipsize = "marquee" 跑马灯
最好加一个约束android:singleline = "true"
tv.setEllipsize(TextUtils.TruncateAt.valueOf("START"));
tv.setEllipsize(TextUtils.TruncateAt.valueOf("MIDDLE"));
tv.setEllipsize(TextUtils.TruncateAt.valueOf("MARQUEE"));
5. 屏幕锁
7.data.split("=="); 用“=”来分割字符串,返回一个string类型的数组,将没次分割出来的字符串放在数组中。
8.PendingIntent的Flags
PendingIntent的Flags为0代表该PendingIntent不带数据;
Flags为PendingIntent.FLAG_CANCEL_CURRENT,则只有最后一次PendingIntent有效,之前的都无效了。
Flags为PendingIntent.FLAG_UPDATE_CURRENT,如果上面的num为常量, 则所有对应的Intent里面的extra被更新为最新的, 就是全部为最后一次的。 相反,如果num每次不一样,则里面的Inent的数据没被更新。所以要通过extra数据来区分intent,应采用PendingIntent.FLAG_UPDATE_CURRENT),且每次num不一样
9.为每段代码添加一个异常捕获的代码,可以确保一个出问题,其他的可以顺利运行。
10.
11. listview.setselection(0);滚动到选中行
12. 在使用android中的draw9patch的时候,不仅需要画横的,也要画竖的,避免在使用图片的时候会出现在图片的旁边出现画的黑色的边框。
13.sqlite介绍的很好的一个文章http://www.ibm.com/developerworks/cn/opensource/os-cn-sqlite/
14.有好多值得学习的内容的一个博客http://blog.163.com/vicent_zxb/blog/#m=0
15.在AndroidManifest.xml中设置了android:icon="@drawable/main_icon"之后,会将这个图片和lable中的内容显示在title上。
16.android/res/values-sw600dp
是为了屏幕分辨率自适应。android设备很多,尺寸密度分辨率都不同,为了自适应屏幕大小,res目录下提供了多种资源文件,根据所要适配的设置的分辨率,在对应的资源文件下进行设置。
17.values-1024x768 中的dimens.xml文件中写入(1024*768基本上指的就是平板)
在activity中设置时用context.getResource().getDimensource(r.dimen.main_tab_h);即可为其动态设置大小。
18.values中的内容是指通常情况下这么适配或调用。当符合更细一层的条件时,会选择更详细的一层values-1024*768适配。
19.sqlserver是一个数据管理系统。
20.关于android 的webservice的一个很好的可以运行的例子。http://www.cnblogs.com/android100/archive/2013/11/20/Android-ksoap2-android.html
19.
比如一个有符号位的8位二进制数11001101,逻辑右移就不管符号位,如果移一位就变成01100110。算术右移要管符号位,右移一位变成10100110。
逻辑左移=算数左移,右边统一添0
逻辑右移,左边统一添0
算数右移,左边添加的数和符号有关
e.g:1010101010,其中[]位是添加的数字
逻辑左移一位:010101010[0]
算数左移一位:010101010[0]
逻辑右移一位:[0]101010101
算数右移一位:[1]101010101
>>右移运算符,有符号。右边超出截掉,左边补上符号位
>>>右移运算符,无符号,左边补0
算术右移 顾名思义 算术嘛 当然要带符号了 所以要补上符号位 负的就填1正的就填0
那个逻辑右移 直接补上0就ok
2. HEX_DIGITS[b >>> 4 & 0xf] + HEX_DIGITS[b & 0xf];详解
/**
* 十六进制数字
* */
private static final String[] HEX_DIGITS = { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9","a", "b", "c", "d", "e", "f" };
HEX_DIGITS[b >>> 4 & 0xf]取字节中高 4 位的数字转换,>>> 为逻辑右移(即无符号右移),将符号位一起右移
HEX_DIGITS[b & 0xf] 取字节中低4位的数字转换
0xf ->1111(前面的0x目的是标注这个数为十六进制。F由16进制转换为2进制为1111)
如果为0xff -> 1111 1111
HEX_DIGITS[b >>> 4 & 0xf] + HEX_DIGITS[b & 0xf];//1110 & 1000 ->1000(只有对应位上都为1的时候与为1)
3.toLowerCase()方法返回一个字符串,该字符串中的字母被转换为小写字母
4.android 中的Ellipsize
在xml中
android:ellipsize = "end" 省略号在结尾
android:ellipsize = "start" 省略号在开头
android:ellipsize = "middle" 省略号在中间
android:ellipsize = "marquee" 跑马灯
最好加一个约束android:singleline = "true"
也可以用代码语句
tv.setEllipsize(TextUtils.TruncateAt.valueOf("END"));tv.setEllipsize(TextUtils.TruncateAt.valueOf("START"));
tv.setEllipsize(TextUtils.TruncateAt.valueOf("MIDDLE"));
tv.setEllipsize(TextUtils.TruncateAt.valueOf("MARQUEE"));
5. 屏幕锁
//声明键盘管理器并获取键盘的服务
KeyguardManager keyguardManager = (KeyguardManager) context.getSystemService(Context.KEYGUARD_SERVICE);
//声明键盘锁并初始化键盘锁用于锁定或解开键盘锁
KeyguardLock keyguardLock = keyguardManager.newKeyguardLock("");
keyguardLock.disableKeyguard();//解锁屏幕 需要权限android.permission.DISABLE_KEYGUARD
keyguardLock. reenableKeyguard();//给屏幕上锁
6.静态方法好处:不用实例化当前这个类对象,可以直接调用这个类对象中的方法。例:Integer.parser("123456");这个调用的就是静态方法。
7.data.split("=="); 用“=”来分割字符串,返回一个string类型的数组,将没次分割出来的字符串放在数组中。
8.PendingIntent的Flags
PendingIntent的Flags为0代表该PendingIntent不带数据;
Flags为PendingIntent.FLAG_CANCEL_CURRENT,则只有最后一次PendingIntent有效,之前的都无效了。
Flags为PendingIntent.FLAG_UPDATE_CURRENT,如果上面的num为常量, 则所有对应的Intent里面的extra被更新为最新的, 就是全部为最后一次的。 相反,如果num每次不一样,则里面的Inent的数据没被更新。所以要通过extra数据来区分intent,应采用PendingIntent.FLAG_UPDATE_CURRENT),且每次num不一样
9.为每段代码添加一个异常捕获的代码,可以确保一个出问题,其他的可以顺利运行。
10.
Hashtable.keySet() 降序
TreeMap.keySet() 升序
HashMap.keySet() 乱序
LinkedHashMap.keySet() 原序
11. listview.setselection(0);滚动到选中行
12. 在使用android中的draw9patch的时候,不仅需要画横的,也要画竖的,避免在使用图片的时候会出现在图片的旁边出现画的黑色的边框。
13.sqlite介绍的很好的一个文章http://www.ibm.com/developerworks/cn/opensource/os-cn-sqlite/
14.有好多值得学习的内容的一个博客http://blog.163.com/vicent_zxb/blog/#m=0
15.在AndroidManifest.xml中设置了android:icon="@drawable/main_icon"之后,会将这个图片和lable中的内容显示在title上。
16.android/res/values-sw600dp
是为了屏幕分辨率自适应。android设备很多,尺寸密度分辨率都不同,为了自适应屏幕大小,res目录下提供了多种资源文件,根据所要适配的设置的分辨率,在对应的资源文件下进行设置。
17.values-1024x768 中的dimens.xml文件中写入(1024*768基本上指的就是平板)
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<dimen name="main_tab_h">80dp</dimen> 设置图片时用dp
<dimen name="main_tab_tsize">22sp</dimen> 设置字体大小时用sp
<dimen name="set_userinfo_prow">100dp</dimen>
<dimen name="set_cpwd_prow">100dp</dimen>
</resources>
备注:在xml中调用时直接android:layout_height="@dimen/main_tab_h"调用为其设置大小
在activity中设置时用context.getResource().getDimensource(r.dimen.main_tab_h);即可为其动态设置大小。
18.values中的内容是指通常情况下这么适配或调用。当符合更细一层的条件时,会选择更详细的一层values-1024*768适配。
19.sqlserver是一个数据管理系统。
20.关于android 的webservice的一个很好的可以运行的例子。http://www.cnblogs.com/android100/archive/2013/11/20/Android-ksoap2-android.html
19.
int[] location = new int[2]
//location [0]代表x坐标,location [1] 代表Y 坐标。//获取在整个屏幕内的绝对坐标,注意这个值是要从屏幕顶端算起,也就是包括了通知栏的高度。imgBtn.getLocationOnScreen(location);