现在位置: 首页 > 移动开发 > 文章
2018年09月18日 移动开发 ⁄ 共 3491字 评论关闭
第一步:定义一个annotation类 @Target(ElementType.FIELD) @Retention(RetentionPolicy.RUNTIME) public @interface JSONValue {         public String tag() default ""; } 第二步:封装转换方法 public class JSONConverter { /* * 将json字符串(如:"{'id':123,'name':'张三'}")转换成对象 */ public static void fromJson(String json_string, Object o) {       try {            JSONObject jo = new JSONObject(jso...
阅读全文
2018年09月18日 移动开发 ⁄ 共 4070字 评论关闭
在Android应用里,最耗费内存的就是图片资源。而且在Android系统中,读取位图Bitmap时,分给虚拟机中的图片的堆栈大小只有8M,如果超出了,就会出现OutOfMemory异常。所以,对于图片的内存优化,是Android应用开发中比较重要的内容。   1) 要及时回收Bitmap的内存   Bitmap类有一个方法recycle(),从方法名可以看出意思是回收。这里就有疑问了,Android系统有自己的垃圾回收机制,可以不定期的回收掉不使用的内存空间,当...
阅读全文
2018年09月18日 移动开发 ⁄ 共 1593字 评论关闭
 public void killProcess(){      ActivityManager activityManger=(ActivityManager) this.getSystemService(ACTIVITY_SERVICE);      List<ActivityManager.RunningAppProcessInfo> list=activityManger.getRunningAppProcesses();//得到正在运行的进程信息      if(list!=null){       for(int i=0;i<list.size();i++){        ActivityManager.RunningAppProcessInfo apinfo=list.get(i);        System.out.pri...
阅读全文
2018年09月18日 移动开发 ⁄ 共 1366字 评论关闭
//获取可用运存大小 private long getAvailMemory(Context context){         // 获取android当前可用内存大小         ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);         MemoryInfo mi = new MemoryInfo();         am.getMemoryInfo(mi);         //mi.availMem; 当前系统的可用内存         //return Formatter.formatFileSize(context, mi.availMem);// 将获取的内...
阅读全文
2018年09月18日 移动开发 ⁄ 共 204字 评论关闭
//是平板返回true 不是平板返回false public  boolean isTablet(Context context) {   return (context.getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) >= Configuration.SCREENLAYOUT_SIZE_LARGE;  }
阅读全文
  1 public static float GetTextWidth(String text, float Size) { //第一个参数是要计算的字符串,第二个参数是字提大小 2         TextPaint FontPaint = new TextPaint(); 3         FontPaint.setTextSize(Size); 4         return FontPaint.measureText(text); 5     }
阅读全文
2018年09月18日 移动开发 ⁄ 共 2874字 评论关闭
1、程序运行错误,如何查看日志?      Windows --Show View --Logcat,打开日志试图。根据日志信息查找错误。 2、SQLiteDatabase created and never closed 错误是如何造成的?      如果用openorcreatedatabase方法创建数据库,需要手动释放。加上db.close()就可以了。建议用Android 提供的帮助类SQLiteOpenHelper来创建数据库 3、Activity之间对于复杂数据类型是通过android.os.parceable接口来传递的。 4、APK签名是用来保...
阅读全文
2018年09月18日 移动开发 ⁄ 共 10225字 评论关闭
 第六部分 Widget日历    本例实现了Widget日历,用来显示当前的日期,时间等信息。要学习开发Widget开发,需要了解AppWidget的框架结构。基于该框架,开发者可以在Ophone及模拟器上开发"外形"    类似传统的Widget小应用程序,并将其嵌入到其他应用中。     注意:Widget设计好UI后根据需要来完成更新,如果程序不需要使用定时来更新AppWidget,则最好不要使用定时更新,因为它会增加电量和CUP资源的开销。我们可以定义一个线...
阅读全文
2018年09月18日 移动开发 ⁄ 共 2352字 评论关闭
Android中跟Touch事件有关的事件有三个:     public boolean dispatchTouchEvent(MotionEvent ev):传递Touch事件至target view(可以是自己)。     public boolean onInterceptTouchEvent(MotionEvent ev):在ViewGroup中定义,用于拦截Touch事件的传递。     public boolean onTouchEvent(MotionEvent event): Touch事件处理函数。     先说下事件传递的两种方式:     隧道方式:从根元素依次往下传递...
阅读全文
2018年09月18日 移动开发 ⁄ 共 6186字 评论关闭
Android圆形图片控件效果图如下: 代码如下: RoundImageView.java package com.dxd.roundimageview; import android.content.Context; import android.content.res.TypedArray; import android.graphics.Bitmap; import android.graphics.Bitmap.Config; import android.graphics.Canvas; import android.graphics.Paint; import android.graphics.PorterDuff.Mode; import android.graphics.PorterDuffXfermode; import an...
阅读全文