http://developer.android.com/reference/android/util/Base64.html
http://hi.baidu.com/xxfaxy/item/4c44f6fd4539dd5cc8f33705
首先导入包
import android.util.Base64;
String 变量=android.util.Base64.encodeToString(字符串.getBytes(),Base64.DEFAULT);
也可简写为
String 变量=Base64.encodeToString(字符串.getBytes(),Base64.DEFAULT);
至于解码
byte b[]=android.util.Base64.decode(字符串,Base64.DEFAULT);
String 变量=new String(b);
Tag: Android开发
来自以下两篇文章:
http://www.cnblogs.com/sqzzy/p/3291791.html
http://hi.baidu.com/xxfaxy/item/4c44f6fd4539dd5cc8f33705
今天在做手机项目中的表情模块。 后台:表情包的上传自动解压缩->各种封面的替换->表情的详细资料,提供表情包和单张表情的下载->统计表情下载的人数和人次 前台:开放下载 api接口。 难点:后台表情的图片二进制流和ios/安卓的交互。二进制流传递的问题 获取图片二进制流方法:$str = file_get_contents(‘http://www.baidu.com/logo.gif’); //可以直接获取图片的二进制流,而且还是字符串类型 我们采用的是json传递的方式:如果json_encode($str); //会显示一个null 这时候的解决方案是:采用可逆的编码base64对二进制字节流进行编码转换 $base64 = base64_encode($str); 然后把这个组合成想要的格式进行json_encode(); 和前台交互。所以在进行二进制流传递的时候,最好进行编码转换一下。首选 base64编码转换
============
首先导入包
import android.util.Base64;
String 变量=android.util.Base64.encodeToString(字符串.getBytes(),Base64.DEFAULT);
也可简写为
String 变量=Base64.encodeToString(字符串.getBytes(),Base64.DEFAULT);
至于解码
byte b[]=android.util.Base64.decode(字符串,Base64.DEFAULT);
String 变量=new String(b);
【转载】[Android问答] px、dp和sp,这些单位有什么区别?
原文见:http://www.cnblogs.com/bjzhanghao/archive/2012/11/06/2757300.html
相信每个Android新手都会遇到这个问题,希望这篇帖子能让你不再纠结。
px:
即像素,1px代表屏幕上一个物理的像素点;
px单位不被建议使用,因为同样100px的图片,在不同手机上显示的实际大小可能不同,如下图所示。
dp:
这个是最常用但也最难理解的尺寸单位。它与“像素密度”密切相关,所以首先我们解释一下什么是像素密度。假设有一部手机,屏幕的物理尺寸为1.5英寸x2英寸,屏幕分辨率为240×320,则我们可以计算出在这部手机的屏幕上,每英寸包含的像素点的数量为240/1.5=160dpi(横向)或320/2=160dpi(纵向),160dpi就是这部手机的像素密度,像素密度的单位dpi是Dots Per Inch的缩写,即每英寸像素数量。横向和纵向的这个值都是相同的,原因是大部分手机屏幕使用正方形的像素点。
不同的手机/平板可能具有不同的像素密度,例如同为4寸手机,有480×320分辨率的也有800×480分辨率的,前者的像素密度就比较低。Android系统定义了四种像素密度:低(120dpi)、中(160dpi)、高(240dpi)和超高(320dpi),它们对应的dp到px的系数分别为0.75、1、1.5和2,这个系数乘以dp长度就是像素数。例如界面上有一个长度为“80dp”的图片,那么它在240dpi的手机上实际显示为80×1.5=120px,在320dpi的手机上实际显示为80×2=160px。如果你拿这两部手机放在一起对比,会发现这个图片的物理尺寸“差不多”,这就是使用dp作为单位的效果,见下图。
dip:
与dp完全相同,只是名字不同而已。在早期的Android版本里多使用dip,后来为了与sp统一就建议使用dp这个名字了。
sp:
与缩放无关的抽象像素(Scale-independent Pixel)。sp和dp很类似但唯一的区别是,Android系统允许用户自定义文字尺寸大小(小、正常、大、超大等等),当文字尺寸是“正常”时1sp=1dp=0.00625英寸,而当文字尺寸是“大”或“超大”时,1sp>1dp=0.00625英寸。类似我们在windows里调整字体尺寸以后的效果——窗口大小不变,只有文字大小改变。
还有几个比较少用到的尺寸单位:
mm:
即毫米;
in:
即英寸,1英寸=2.54厘米(约);
pt:
1pt=1/72英寸=0.035厘米;
最佳实践,文字的尺寸一律用sp单位,非文字的尺寸一律使用dp单位。例如textSize=”16sp”、layout_width=”60dp”;偶尔需要使用px单位,例如需要在屏幕上画一条细的分隔线时:
参考资料:
Difference of px, dp, dip and sp in Android?
Supporting Multiple Screens
DisplayMetrics
Android SimpleAdapter显示ListView、GridView
Source : http://stackoverflow.com/questions/14483393/how-do-i-change-the-android-actionbar-title-and-icon
This is very simple to accomplish
If you want to change it in code call
setTitle("My new title");
getActionBar().setIcon(R.drawable.my_icon);
In XML:
To enable the back button in your app use
getActionBar().setHomeButtonEnabled(true);
getActionBar().setDisplayHomeAsUpEnabled(true);
The code should all be placed in your onCreate so that the label/icon changing is transparent to the user, but in reality it can be called anywhere during the activity’s lifecycle
via http://moto0421.iteye.com/blog/1395469
相信有很多菜鸟在编写xml文件的时候,都会遇到这样的问题,明明是从网上down来的代码,copy上去了却报错,而且提示unbound prefix,问题往往还很诡异,换了一次代码有可能就好了,自己也不知道哪儿出了错。
这个问题似乎跟xmlns:android=”http://schemas.android.com/apk/res/android”这段代码有关,xmlns定义了一个命名空间,具体的意思大家可以去网上看一看,写网页的时候也经常用,本段代码的意思就是引用了xml可以使用的空间android,这样android类别下的所有属性我们都可以在这个布局里面加以使用了,unbound prefix意思是前缀未被约定,比如我们写android:text=”Iloveu”,就引用了android空间中的text属性
所以,如果再遇到unbound prefix的问题,请查看命名空间有没有定义完全,或者是某部分隶属的布局中所使用的命名空间是否被定义了。一般来说,在xml的最开始就应该把所有要用到的xmlns声明好
里面讲到了异构(Heterogeneous)的convertView怎么处理的问题
http://blog.csdn.net/cc_lq/article/details/7090142
android里如何获得timestamp时间类型呢 在stackoverflow上的5268495
String myDate = new String("your date"); SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date date = format.parse(myDate); date.getTime(); //fetch the time as milliseconds from Jan 1, 1970 Calendar.getInstance.getTimeInMillis()