- 博客(122)
- 资源 (4)
- 收藏
- 关注
原创 android Spinner使用问题汇总
1.使用Spinner时候,弹出下拉框样式不是默认样式,解决代码: Spinner spinner_name_qs_type = (GeenkSpinner) findViewById(R.id.spinner_name_qs_type); ArrayAdapter qsTypeAdapter = new ArrayAdapter(ScanNewQSActivity.this, a
2016-06-23 10:20:30
1443
原创 android PreviewCallback方法中获取图片
在摄像头预览的时候,我们可以通过实现接口PreviewCallback方法可以得到每帧的视频数据,但获取的数据不能直接将数据保存为Bitmap,因为该预览帧数据使用android默认的NV21格式,需要进行转换为最常见的就是rgb和jpeg类型,NV21格式其实是一种YUV格式,这里提供方法转换成常用的Bitmap该算法摘自网络:http://www.cnblogs.com/mengy
2016-05-30 14:00:41
3355
转载 Android排错:has leaked window com.android.internal.policy.impl.PhoneWindow$ that was originally added
异常场景:经常在应用中需要处理一些耗时的工作,诸如读取大文件、访问网络资源等。为了避免因程序假死而带来的糟糕用户体验,通常我们可以通过线程+Handler或者Android提供的AsyncTask来解决该问题,并一般以ProgressDialog等提示性控件来告知用户当前的程序进度。而标题中描述的异常则会常常出现在这样的场景中,并且往往掩盖了导致异常的真正的罪魁祸首。 问题
2016-03-22 09:31:32
611
转载 ListView缓存机制
ListView缓存机制说到ListView当然少不了Adapter了,Adapter的作用就是ListView界面与数据之间的桥梁,当列表里的每一项显示到页面的额时候,都会调用Adapter的getView()这个方法返回一个View。这样,ListView中有多少项,就应该调用多少次getView()方法去绘制每一项的界面。如果项数少的时候(几十行),这是没问题的。但是如果
2016-03-18 15:14:23
800
原创 android ListView嵌入EditText焦点和值错误问题
ListView嵌入EditText,会发现两个问题1.EditText无法获取焦点2.给EditText输入值以后滑动ListView会发现很多Item的EditText值会自动赋值,导致很多重复,或者其他各种EditText值的问题解决办法:1.EditText无法获取焦点问题①.在Manifest.xml中你使用的Activity添加android
2016-03-18 13:52:11
2673
原创 装饰模式
装饰模式各个角色1.抽象构件(Component)角色:给出一个抽象接口,以规范准备接受附加责任的对象。2.具体构件(Concrete Component)角色:定义一个将要接收附加责任的类。3.装饰(Decorator)角色:持有一个构件(Component)对象的实例,并定义一个与抽象构件接口一致的接口。4.具体装饰(Concrete Decorator)角
2016-03-17 15:59:53
659
原创 桥接模式
桥梁模式的目的是为同一个抽象化角色提供不同的实现桥接模式的魅力在于将抽象和实现解耦,从而使两者可以相对独立变化,互不影响。软件设计莫的初衷就是为了解决软件复用、内聚、耦合等问题,在类与类之间,应该尽量使用弱关联的关系,如果两个类的确关联非常紧密,则使用继承的强关联关于,一般情况下,要尽量避免使用高耦合度的设计方式,这样不利于软件结构的扩展。桥接设计模式中
2016-03-17 15:34:29
597
原创 android内存分析工具MAT
传送门:工具下载链接:http://www.eclipse.org/mat/downloads.php工具使用方法介绍:http://www.jianshu.com/p/d8e247b1e7b2http://www.jianshu.com/p/c49f778e7acf
2015-12-30 10:38:15
591
原创 Activity的四种启动模式简单理解
1.standard这个模式最好理解,Activity默认的启动模式,每次跳转都会在同一个Activity任务栈中生成新的activity实例,新生成的实例都位于栈顶。2.singleTop跳转到这个模式的Activity时,系统会检查任务栈的栈顶,如果栈顶存在了该Activity则不重新生成新的实例,直接使用该栈顶存在的实例,如果栈顶没有该Activity,则不管该栈是否
2015-12-28 23:02:59
1093
原创 通过api查看android控件属性
最近学习android 最新兼容包android.support.design的一些新控件,遇到很多新控件的属性总是百思不得其解,通过百度搜索出来的资料非常有限,都是别人翻译出来的,并不全面的理解控件属性的概念和用法,于是想自己通过官方文档来学习最全面的知识,经过摸索,总是探索出方法了,下面给出查看android.support.design包新控件的属性步骤。比如下面代码中属性layout_
2015-12-02 23:45:17
4072
原创 Intent传递Parcelable List对象
步骤:1.首先对象要实现Parcelable接口2.用Intent发送对象或者list,关键代码bundle.putParcelable("student", stu);bundle.putParcelableArrayList("student_list", list);3.用Intent获取对象或者list ,关键代码 Student stu
2015-11-25 11:20:06
15084
原创 多线程中更新UI万能方法
/** * 在任何线程通过该方法更新UI * @param r */ public void updateUIFromAnyThread(Runnable r){ Handler handler = new Handler(Looper.getMainLooper()); handler.post(r); }以上方
2015-11-18 22:48:13
941
原创 android利用sdk文档查看style相关属性
有时候想设置窗体一些属性,比如dialog没有标题,这个时候除了上网搜索现成的例子,也可以自己去SDK文档上面查找相关属性来设置,下面提供步骤:1.打开SDK api文档2.点击左上方包名android3.右下方一直往下拉找到R.styleable,点击即可在右边视图中看到各种style属性 true 如下图所示:
2015-11-18 16:43:04
2022
原创 android主题切换
步骤:1.在attr.xml下定义style变量2.在style.xml下编写不同的主题,不同主题引用attr.xml中定义好的变量设置不同的属性3.在布局文件中控件相应属性引用attr.xml下定义style变量4.在activity中响应事件中切换主题,例如切换成其中一个主题R.style.AppTheme;设置一个可以持久化的变量标识切换成哪一个主题5.调用MainA
2015-08-05 11:38:04
1264
转载 解决Android 5.0中出现的警告:Service Intent must be explicit
有些时候我们使用Service的时需要采用隐私启动的方式,但是Android 5.0一出来后,其中有个特性就是Service Intent must be explitict,也就是说从Lollipop开始,service服务必须采用显示方式启动。而android源码是这样写的(源码位置:sdk/sources/android-21/android/app/ContextImpl.jav
2015-08-04 19:16:04
1186
原创 android studio生成aar包并在其他工程引用aar包
1.aar包是android studio下打包android工程中src、res、lib后生成的aar文件,aar包导入其他android studio 工程后,其他工程可以方便引用源码和资源文件2.生成aar包步骤:①.用android studio打开一个工程,然后新建一个Module,新建Module时候选择Android Library,后面按新建普通工程操作
2015-08-03 16:17:11
130227
3
转载 Android Camera设置setPreviewCallback实现onPreviewFrame接口实时截取每一帧视频流数据
转自:http://www.cnblogs.com/skyseraph/archive/2012/03/26/2418665.html1 概述通过Android Camera拍摄预览中设置setPreviewCallback实现onPreviewFrame接口,实时截取每一帧视频流数据2 知识点① Android Camera使用: 参考 Refs/Related
2015-08-01 19:46:30
30781
1
原创 SurfaceView的一些简单记录
1.surfaceView是继承之View,与普通的Button、TextView的区别是surfaceView在非UI线程上刷新View2.surfaceView内部实现了SurfaceHolder接口,提供getHolder方法来获取SurfaceHolder,使用者通过surfaceView对象获取SurfaceHolder来用来操纵surface。处理它的Canvas上画的效果和动画,
2015-08-01 19:38:46
3284
转载 android studio 把源码和资源文件一起打包生成aar包
前段时间需要做一个sdk项目,正苦闷用什么打包方式,要是使用jar打包,jar只能打包class文件,要想把资源文件打包进去比较麻烦的意见事情,界面不多的话可以使用反射调用,把资源文件都通过这个反射的R引用出来。 ?1234567891011121
2015-07-11 20:20:25
17975
原创 mac系统eclipse用android第三方模拟器genymotion调试程序
需要的程序百度网盘下载链接: http://pan.baidu.com/s/1kTKP08J 密码: mxys步骤1.用上面百度网盘分享链接下载genymotion和VirtualBox,并分别安装2.注册genymotion账号,注册链接 https://www.genymotion.com/#!/3.打开genymotion并用刚才注册成功的账号登录,点击add按钮
2015-07-04 21:56:51
4081
转载 使用aapt查看apk包名和第一个启动的activity
使用aapt //aapt是sdk自带的一个工具,在sdk\builds-tools\目录下1.以ES文件浏览器为例,命令行中切换到aapt.exe目录执行:aapt dump badging E:\apk\es3.apk2.运行后的结果中以下两行分别是应用包名package和入口activity名称package: name=’com.estrongs.android.pop’
2015-06-30 20:31:24
11435
转载 RelativeLayout相对布局
RelativeLayout用到的一些重要的属性: 第一类:属性值为true或false android:layout_centerHorizontal 水平居中 android:layout_centerVertical 垂直居中 android:layout_centerInParent 相对于父元素完全居中 android:layout_al
2015-06-26 14:35:41
602
原创 GreenDao数据库结构升级
1.先用GreenDao工具类编写自动创建代码,按照升级后的最新数据库结构来编写2.GreenDao工具自动生成的代码覆盖到项目里去3.在项目里找到对应的自动生成的数据库DaoMaster类在DaoMaster类里有个内部类DevOpenHelper里的方法onUpgrade里写上数据库结构变化的代码,比如某个表新增字段,并要把里面dropAllTables和onCreate方法删掉
2015-05-15 16:20:17
10384
原创 高并发长连接服务器相关技术
做个记录方便以后使用时搜索相关资料1.Apache mina2.Apache Apollo3.tigase4.netty
2015-01-19 14:24:51
1842
原创 程序中调用其他apk方法
Intent intent = new Intent(); // 包名 包名+类名(全路径) intent.setClassName("com.tencent.qqphonebook", "com.tencent.qqphonebook.ui.PhoneBookActivity"); this.startActivity(intent);
2015-01-16 09:35:20
878
转载 Apache Apollo
Apache Apollo官网参考:http://activemq.apache.org/apollo/Apache Apollo是一个代理服务器,其是在ActiveMQ基础上发展而来的,可以支持STOMP, AMQP, MQTT, Openwire, SSL, and WebSockets 等多种协议。源码地址:http://activemq.apache.org/apo
2015-01-14 15:06:02
4258
转载 android混淆打包
-keep public class com.unionpay.** {*; }【对com.unionpay包下所有的类都不进行混淆,即不混淆类名,也不混淆方法名和变量名】proguard.cfg 配置例子如下:-optimizationpasses 5-dontusemixedcaseclassnames-dontskipnonpubliclibraryclasses-
2015-01-08 15:31:07
705
原创 android下载docs api帮助文档
找到下面的sort by 选择repository,然后上面显示的documentation for android SDK选项就是doc,install即可。
2014-12-28 22:50:46
1134
转载 iOS中assign,copy,retain之间的区别以及weak和strong的区别
@property (nonatomic, assign) NSString *title; 什么是assign,copy,retain之间的区别? assign: 简单赋值,不更改索引计数(Reference Counting)。 copy: 建立一个索引计数为1的对象,然后释放旧对象 retain:释放旧的对象,将旧对象的值赋予输入对象,再提高输入对象的索引计数为1
2014-12-28 13:26:59
25126
原创 解决ios7以上版本UIAlertView调用addSubview无效问题
解决ios7以上版本UIAlertView的addSubview函数无效问题如下代码增加两个文本框效果- (IBAction)add:(id)sender { UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:@"添加明星阵容" message:nil delegate:self cancelBut
2014-12-27 21:42:50
5812
原创 使Android原生时间选择器样式为滚轮
很简单,修改styles.xml代码 stylename="AppBaseTheme"parent="android:Theme.Light"> Theme customizations available in newer API levels can go in res/values-
2014-12-22 11:06:41
13100
转载 Android实现手势缩放图片
http://blog.sina.com.cn/s/blog_5fc933730100pw8k.htmlimport android.graphics.Matrix;import android.graphics.PointF;import android.util.FloatMath;import android.util.Log;import android.view.Mo
2014-12-22 10:43:41
902
原创 ios数据库sqlite3简单使用示例一
//// ViewController.m// TestSaveData//// Created by cy on 14/12/21.// Copyright (c) 2014年 cy. All rights reserved.//#import "ViewController.h"#import @interface ViewController (){ s
2014-12-21 22:32:55
756
原创 OC使用引用计数的内存管理
OC使用引用计数的内存管理每个对象中又一个引用计数器retainCountalloc 、[mutable]copy、retain使引用计数器加1release使引用计数器减1引用计数器为0,调用deallo销毁对象黄金法则:如果对一个对象使用了alloc、[mutable]copy、retain,那么你必须使用响应的release或autorelease
2014-12-09 21:37:16
813
转载 mac电脑配置adb环境变量
1.找到android sdk的本地路径, adb命令在platform-tool下面,记为XXXX 我的路径是(/Applications/eclipse/android-sdk-mac_x86/platform-tools)2.打开终端输入touch .bash_profile open -e .bash_profile 点回车3.
2014-12-09 16:53:28
758
原创 C语言程序编译的内存分配
1.栈区(stack) 编译器自动分配释放,主要存放函数的参数值,局部变量值等;2.堆区(heap)由程序员分配释放3.全局区或静态区存放全局变量和静态变量,程序结束时由系统释放,分为全局初始化区和全局未初始化区;4.字符常量区常量字符串放于此,程序结束时由系统释放;5.程序代码区存放函数体的二进制代码
2014-12-07 09:58:44
736
原创 修改Eclipse 代码编辑界面主题为黑色主题
1.安装新插件eclipse-color-theme - http://eclipse-color-theme.github.io/update/2.在windows-属性-General-Appearance-color Theme 3.右侧窗口选择想要的主题
2014-12-05 09:31:19
4531
转载 Android PendingIntent
pendingIntent字面意义:等待的,未决定的Intent。要得到一个pendingIntent对象,使用方法类的静态方法 getActivity(Context, int, Intent, int),getBroadcast(Context, int, Intent, int),getService(Context, int, Intent, int) 分别对应着Inte
2014-11-23 21:42:29
568
转载 ubuntu 安装 Android NDK
转自:http://www.cnblogs.com/plinx/p/3143461.html 1、 Download NDKhttps://developer.android.com/tools/sdk/ndk/index.html 2、Install NDK$ tar xvf android-ndk-r8e-linux-x86_64.tar.bz2 -C
2014-11-21 10:11:32
1363
转载 ubuntu 安装 JDK
转自:http://www.cnblogs.com/plinx/archive/2013/06/01/3113106.html 具体步骤参详了如下链接:http://blog.youkuaiyun.com/yang_hui1986527/article/details/6677450 1、到 Sun 的官网下载http://www.oracle.com/techn
2014-11-21 10:09:19
570
java多线程详细解说
2011-11-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人