Android
文章平均质量分 66
fangchao3652
面朝大海 春暖花开
展开
-
Fragment提交transaction导致state loss异常
java.lang.IllegalStateException: Activity has been destroyed at android.app.FragmentManagerImpl.enqueueAction(Fragment转载 2016-01-19 14:57:09 · 478 阅读 · 0 评论 -
Android 占位符 %1$s %1$d
1、整型,比如“我今年23岁了”,这个23是整型的。在string.xml中可以这样写,我今年%1$d岁了 在程序中,使用 [java] view plaincopyString sAgeFormat = getResources().getString(R.string.old); String sFinalA原创 2015-01-22 09:30:55 · 1312 阅读 · 1 评论 -
Android 大图片加载 避免OOM
文章来自郭大神:=======转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/9316683本篇文章主要内容来自于Android Doc,我翻译之后又做了些加工,英文好的朋友也可以直接去读原文。http://developer.android.com/training/displaying-bitma原创 2015-01-21 11:42:11 · 1040 阅读 · 0 评论 -
android annotation 注入 @afterview 执行时间
01-20 13:52:28.888 3870-3870/cc.android.supu I/System.out﹕ 父类oncreate01-20 13:52:28.888 3870-3870/cc.android.supu I/System.out﹕ 子类oncreate01-20 13:52:28.903 3870-3870/cc.android.supu I/Sy原创 2015-01-20 14:01:53 · 1767 阅读 · 0 评论 -
class 文件与dex文件区别 (dvm与jvm区别)及Android DVM介绍
区别一:dvm执行的是.dex格式文件 jvm执行的是.class文件 android程序编译完之后生产.class文件,然后,dex工具会把.class文件处理成.dex文件,然后把资源文件和.dex文件等打包成.apk文件。apk就是android package的意思。 jvm执行的是.class文件。区别二:dvm是基于寄存器的虚拟机 而jvm执行是基于虚拟栈的虚拟机。寄存原创 2014-12-29 21:53:03 · 6134 阅读 · 0 评论 -
android view组件draw onDraw,dispatchDraw
Android的view组件显示主要经过mesure, layout和draw这三个过程。在mesure阶段里调用mesure(int widthSpec, int heightSpec)方法,这个方法是final不能被重写,在这个过程里会调用onMesure(int widthSpec, int heightSpec)方法。当组件设置好大小后,调用final layout(int l, in原创 2015-01-27 11:09:55 · 1623 阅读 · 0 评论 -
TextView 设置中划线 下滑线 并消除锯齿
android:textAppearance设置文字外观。如“?android:attr/textAppearanceLargeInverse”这里引用的是系统自带的一个外观,?表示系统是否有这种外观,否则使用默认的外观。可设置的值如下:textAppearanceButton/textAppearanceInverse/textAppearanceLarge/textAppearance原创 2015-01-26 15:34:00 · 3750 阅读 · 0 评论 -
Android事件拦截与处理
前段时间刚接触过android手机开发,对它的事件传播机制不是很了解,虽然网上也查了相关的资料,但是总觉得理解模模糊糊,似是而非,于是自己就写个小demo测试了一下。总算搞明白了它的具体机制。写下自己的结论,分享之,希望对初学android的人有所帮助布局效果如图所示: 图1参照上图先说说具体得到的结论:转载 2015-01-27 09:50:57 · 846 阅读 · 0 评论 -
屏幕滑动 Scroll
现在我们来实现一个这样的效果: 屏幕向右滑动超过二分之一屏幕宽度时,松手时,activity从右边滑出;当不够二分之一时,松手之后按,activity回到原来的位置:首先就是OnTouchEvent了,里面很简单就一个move 和up @Override public boolean onTouchEvent(MotionEvent event) { switch (event.ge原创 2015-01-27 10:36:47 · 1395 阅读 · 0 评论 -
WebView无法放大缩小解决方案
先看看我们之前所写的代码1) 添加权限:AndroidManifest.xml中必须使用了许可"android.permission.INTERNET"2) 使用了一个WebView组件android:id="@+id/wv" android:layout_width="fill_parent" android:layout_height="原创 2014-09-03 14:20:42 · 2582 阅读 · 0 评论 -
Android中运行的错误:java.lang.UnsatisfiedLinkError: Couldn't load locSDK3: findLibrary returned null.
今天在使用百度地图的时候运行发现报错:明明已经加入了liblocSDK3.so,但总是无法定位。提示错误java.lang.UnsatisfiedLinkError: Couldn't load locSDK3: findLibrary returned null.网上找了很多的资料找到一个方法:在libs下新建一个armeabi-v7a,然后将liblocSDK3.so复原创 2014-05-30 17:53:46 · 1006 阅读 · 0 评论 -
JNI 详解
JNI其实是Java Native Interface的简称,也就是java本地接口。它提供了若干的API实现了和Java和其他语言的通信(主要是C&C++)。也许不少人觉得Java已经足够强大,为什么要需要JNI这种东西呢?我们知道Java是一种平台无关性的语言,平台对于上层的java代码来说是透明的,所以在多数时间我们是不需要JNI的,但是假如你遇到了如下的三种情况之一呢? 你原创 2014-07-04 11:20:50 · 948 阅读 · 0 评论 -
androidj常用数据库操作JDBC Utils
package mypackage;import java.lang.reflect.Field;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.ResultSetMetaData;import java.sql.SQLExceptio原创 2014-06-06 15:20:42 · 1227 阅读 · 0 评论 -
Volley 使用的缓存
在看次文章前建议先阅读一下郭霖打什么的blog http://blog.csdn.net/guolin_blog/article/details/17482095一共四篇,仔细看。 下面是我对它里面使用的imageloader 中的cache 进行的一下扩充:新建一个bitmapcaache 类继承自android supportV4提供的LruCache (主要包括硬引用,软引用,以及原创 2015-01-21 11:32:20 · 1794 阅读 · 0 评论 -
Android Volley网络通讯框架(Google)
Volley主页 https://android.googlesource.com/platform/frameworks/volley http://www.youtube.com/watch?v=yhv8l9F44qo&feature=player_embedded1. 什么是Volley在这之前,我们在程序中需要和网络通信的时候,大体使用的东西莫过于Async翻译 2015-01-04 21:57:36 · 1052 阅读 · 1 评论 -
高效显示Bitmap+listview冲突解决+图片内存缓存+硬盘缓存
Android高效加载大图BitmapFactory提供了一些解码(decode)的方法(decodeByteArray(), decodeFile(), decodeResource()等),用来从不同 的资源中创建一个Bitmap。 我们应该根据图片的数据源来选择合适的解码方法。 这些方法在构造位图的时候会尝试分配内 存,因此会容易导致 OutOfMemory 的异常。每一种解码方法都可以原创 2015-11-16 21:57:10 · 1492 阅读 · 1 评论 -
Android 文件相关总结
首先我们先来看一段代码:/** * 根据传入的uniqueName获取硬盘缓存的路径地址。 */ public File getDiskCacheDir(Context context, String uniqueName) { String cachePath; if (Environment.MEDIA_MOUNTED.equals(E原创 2015-11-16 18:40:17 · 624 阅读 · 0 评论 -
Android Event.getX 与getRawX的区别
public class Res extends Activity implements View.OnTouchListener { Button btn = null; int x = 0; int y = 0; int rawx = 0; int rawy = 0; @Override原创 2015-11-06 21:02:28 · 2857 阅读 · 0 评论 -
ViewGroup和LayoutParams之间的关系
当在LinearLayout中写childView的时候,可以写layout_gravity,layout_weight属性;在RelativeLayout中的childView有layout_centerInParent属性,却没有layout_gravity,layout_weight,这是为什么呢?这是因为每个ViewGroup需要指定一个LayoutParams,用于确定支持childVi原创 2015-11-14 10:59:48 · 981 阅读 · 0 评论 -
Android touch 事件的分发和消费机制
Android 中与 Touch 事件相关的方法包括:dispatchTouchEvent(MotionEvent ev)、onInterceptTouchEvent(MotionEvent ev)、onTouchEvent(MotionEvent ev);能够响应这些方法的控件包括:ViewGroup、View、Activity。方法与控件的对应关系如下表所示:Tou原创 2015-01-27 09:02:13 · 1104 阅读 · 0 评论 -
Android View的onTouchEvent和OnTouch区别
onTouchListener的onTouch方法优先级比onTouchEvent高,会先触发。假如onTouch方法返回false会接着触发onTouchEvent,反之onTouchEvent方法不会被调用。内置诸如click事件的实现等等都基于onTouchEvent,假如onTouch返回true,这些事件将不会被触发。原创 2015-11-08 15:40:01 · 485 阅读 · 0 评论 -
Android 屏幕适配详解
转载请注明出处:http://blog.csdn.net/zhaokaiqiang199Android的屏幕适配一直以来都在折磨着我们这些开发者,本篇文章以Google的官方文档为基础,全面而深入的讲解了Android屏幕适配的原因、重要概念、解决方案及最佳实践,我相信如果你能认真的学习本文,对于Android的屏幕适配,你将有所收获!Android屏幕适配出现转载 2015-11-05 14:37:55 · 836 阅读 · 0 评论 -
Android 获取IP地址
大家好,我们这一节讲一下,Android获取Ip的一些方法,在我们开发中,有判断手机是否联网,或者想获得当前手机的Ip地址,当然WIFI连接的和我们3G卡的Ip地址当然是不一样的. 首先我尝试了如下方法: [java] view plaincopyWifiManager wifiManager = (WifiM转载 2015-04-07 09:47:00 · 644 阅读 · 0 评论 -
RecyccleView 详解
在谷歌的官网我们可以看到它是这样介绍的: RecyclerView is a more advanced and flexible version of ListView . This widget is a container for large sets of views that can be recycled and scrolled very efficiently. Use原创 2015-01-26 09:43:14 · 2048 阅读 · 0 评论 -
android Notification 的使用
Notification 的使用需要导入 3 个类?123import android.app.PendingIntent; import android.app.NotificationManager; import android.app.Notification;代码示例及说明原创 2013-04-12 23:50:55 · 910 阅读 · 0 评论 -
Android Fragment完全解析
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/8881711我们都知道,Android上的界面展示都是通过Activity实现的,Activity实在是太常用了,我相信大家都已经非常熟悉了,这里就不再赘述。但是Activity也有它的局限性,同样的界面在手机上显示可能很好看,在平板上就未必了,因为平板的屏幕非常原创 2015-01-05 15:44:56 · 783 阅读 · 0 评论 -
android webservice 简单应用
http://www.cnblogs.com/ghj1976/archive/2011/04/26/2028904.html原创 2013-04-22 23:47:51 · 1152 阅读 · 0 评论 -
Activity 加载模式
通常情况下,一个应用有一个Task,这个Task就是为了完成某个工作的一系列Activity的集合。而这些Activity又被组织成了堆栈的形式。 当一个Activity启动时,就会把它压入该Task的堆栈,而当用户在该Activity中按返回键,或者代码中finish掉时,就会将它从该Task的堆栈中弹出。如果我们没有特别的需求,我们的应用就会呈现出如下图所示的情形(好吧,我承认这个图转载 2014-05-22 17:20:29 · 664 阅读 · 0 评论 -
Android ActivityGroup实现的TabHost 保留activity原来状态
在用ActivityGroup实现的TabHost时,由tab1切换到tab2再切换回来时,会重新加载tab1里的activity public class MainUIActivity extends ActivityGroup{ private Context context=this; private TabHost mTabhost; private String TAB原创 2014-05-22 17:18:52 · 1195 阅读 · 0 评论 -
获得联系人的详细信息 代码
package org.crazyit.action;import android.app.Activity;import android.content.Intent;import android.database.Cursor;import android.net.Uri;import android.os.Bundle;import android.provide原创 2013-03-27 23:04:52 · 905 阅读 · 0 评论 -
ListPreference之entries和entryValues
在使用PreferenceActivity时,碰到配置文件的ListPreference有两个属性android:entries,android:entryValues。这两个属性其实就和html的option的显示内容和真实值一样。android:entries设置的内容是我们在设置时看到的内容,而android:entryValues就是保存在preferences.xml中的值。如:转载 2013-03-26 21:18:48 · 889 阅读 · 1 评论 -
Android PreferenceActivity 详解教程
根据已学知识 很快一个念头闪过 即:Activity + Preference 组合 前者用于界面构建 后者用于设置数据存放 其实 这是正确的 但是 这会比较繁琐 因为 每个设置选项 都要建立与其对应的Preference 所以 现在有更好的选择了 那就是本文的主角:PreferenceActivity 从名字应该可以看出 其实 Activity 与 Perference 的混转载 2013-03-26 19:43:59 · 790 阅读 · 0 评论 -
Handler 异步处理
一.一个问题有这样一个问题值得我们思考,若把一些类似于下载的功能(既耗时且不一定有结果)写在Activity(主线程)里,会导致Activity阻塞,长时间无响应,直至页面假死(如果5秒钟还没有完成的话,会收到Android系统的一个错误提示 "强制关闭")。因此,我们需要把这些耗时的操作放在单独的子线程中操作。这就是Handler的使命。Handler提供异步处理的功能,发送和接收不是同原创 2013-04-07 23:50:04 · 1293 阅读 · 1 评论 -
android 主要类库
在Android 类库中,各种包写成android.*的方式,重要包的介绍如下:android.app: 提供高层的程序模型、提供基本的运行环境。android.content: 包含各种的对设备上的数据进行访问和发布的类。android.database: 通过内容提供者浏览和操作数据库。android.graphics: 底层的图形库,包含画布,颜色原创 2013-03-22 22:53:59 · 799 阅读 · 0 评论 -
用Android访问本地站点---(localhost,10.0.2.2)要区别
本文出自 “Android_Tutor” 博客,请务必保留此出处http://weizhulin.blog.51cto.com/1556324/311704知道大家是否想试一下用Android模拟器如何访问自己建的Web站点呢? 下面我将讲一下如何实现.Step 1:我用的Tomcat作为本地服务器,在Webapps这个目录里,把我的名为kankong的Web工程放进来,启动Tom转载 2013-03-31 22:29:46 · 972 阅读 · 1 评论 -
SAX解析XML 详解
JAVA 解析 XML 通常有两种方式,DOM 和 SAX。DOM 虽然是 W3C 的标准,提供了标准的解析方式,但它的解析效率一直不尽如人意,因为使用DOM解析XML时,解析器读入整个文档并构建一个驻留内存的树结构(节点树),然后您的代码才可以使用 DOM 的标准接口来操作这个树结构。但大部分情况下我们只对文档的部分内容感兴趣,根本就不用先解析整个文档,并且从节点树的根节点来索引一些我们需要的数原创 2013-03-30 19:19:37 · 1223 阅读 · 1 评论 -
android XML解析(简介)
本文介绍在Android平台中实现对XML的三种解析方式。 XML在各种开发中都广泛应用,Android也不例外。作为承载数据的一个重要角色,如何读写XML成为Android开发中一项重要的技能。 在Android中,常见的XML解析器分别为DOM解析器、SAX解析器和PULL解析器,下面,我将一一向大家详细介绍。 第一种方式:DOM解析器:DOM是基于树形结构的的节点或信原创 2013-03-30 16:25:01 · 1399 阅读 · 0 评论 -
android文件处理
获取文件大小 public static final int MAX_ATTACHMENT_UPLOAD_SIZE = (5 * 1024 * 1024); File file = new File( "/sdcard/default/aaa.txt" ); long size = file.length(); //获取文件大小,单位为byte原创 2013-03-29 22:22:07 · 1302 阅读 · 0 评论 -
BroadcastReceiver(广播)
在 Android 中使用 Activity, Service, Broadcast, BroadcastReceiver活动(Activity) - 用于表现功能 服务(Service) - 相当于后台运行的 Activity广播(Broadcast) - 用于发送广播广播接收器(BroadcastReceiver) - 用于接收广播Intent - 用于连接以上各个组件,原创 2013-03-21 22:06:50 · 761 阅读 · 0 评论 -
android ListView详解
在android开发中ListView是比较常用的组件,它以列表的形式展示具体内容,并且能够根据数据的长度自适应显示。抽空把对ListView的使用做了整理,并写了个小例子,如下图。 列表的显示需要三个元素:1.ListVeiw 用来展示列表的View。2.适配器 用来把数据映射到ListView上的中介。3.数据 具体的将被映射的字符串,图片,或者基原创 2013-03-29 22:13:14 · 1117 阅读 · 0 评论