android
羊之角
这个作者很懒,什么都没留下…
展开
-
Android cannot resolve symbol R问题
1、布局文件错误2.build.gradle版本问题原创 2019-06-27 18:19:46 · 200 阅读 · 0 评论 -
Android设置全屏与去掉默认的标题
1、在Style中去掉标题与设置全屏在AndroidManifrst.xml中会引入一个AppTheme样式,如下代码所示 <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name"原创 2017-12-28 18:29:09 · 222 阅读 · 0 评论 -
Android坐标系和视图坐标系
Android坐标系的理解直接关系到后面你Android进阶部分的学习,如果没有夯实的基础,你自定义View时就会有种欲求不满,欲罢不能——想搞懂却又觉得难,想放弃又觉得舍不得。Android中的坐标系以及获取坐标的方法 Android中有两种坐标系,分别称之为Android坐标系和视图坐标系。而对应的也有一些相关的方法可以获取坐标系中的坐标值。只有搞清楚这些区别,才能在实现的转载 2017-07-07 15:22:16 · 304 阅读 · 0 评论 -
Android手机卡顿原因
一、什么是VSYNC VSYNC是啥?他就是一个信号源。假设你的屏幕是60FPS的话,那意味着,每隔1s,那么屏幕就有60次中断信号产生,即,每隔16.666ms,就会有一次中断信号产生。这个能干嘛用呢?对于屏幕来说,它无非就是每次来一个中断信号,就刷新一下屏幕。如果这个中断信号发出后,没有刷新屏幕,就会丢帧,造成屏幕卡顿现象。 在Android 4.转载 2017-12-05 17:58:37 · 785 阅读 · 0 评论 -
Android Studio 2.2 在已有项目中添加NDK
1、加载库与编写native方法2、在Terminal命令窗口下进入到java文件夹,执行如下命令:javah 包名.类名,生成头文件。3、在项目的main文件夹下新建一个cpp文件夹,然后新建一个cpp文件,这个文件名要与代码System.loadLibrary("patch")中的参数名称相同。在这里我把文件名定为patch4、把在第二步中生成的头原创 2017-07-16 18:28:25 · 2296 阅读 · 0 评论 -
Android内存优化大全(中)
转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持!写在最前:本文的思路主要借鉴了2014年AnDevCon开发者大会的一个演讲PPT,加上把网上搜集的各种内存零散知识点进行汇总、挑选、简化后整理而成。所以我将本文定义为一个工具类的文章,如果你在ANDROID开发中遇到关于内存问题,或者马上要参加面试,转载 2015-07-27 16:38:52 · 339 阅读 · 0 评论 -
Android内存优化(上)
转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持!写在最前:本文的思路主要借鉴了2014年AnDevCon开发者大会的一个演讲PPT,加上把网上搜集的各种内存零散知识点进行汇总、挑选、简化后整理而成。所以我将本文定义为一个工具类的文章,如果你在ANDROID开发中遇到关于内存问题,或者马上要参加面试,转载 2015-07-27 16:40:11 · 266 阅读 · 0 评论 -
C++中的线程同步问题
1、创建线程 pthread_create(pthread_t* __pthread_ptr, pthread_attr_t const* __attr, void* (*__start_routine)(void*), void*) 第一个参数:线程的引用 第二个参数:线程的属性 第三个参数:线程执行的方法 第四个参数:线程传递给线程执行方法的参数原创 2017-12-08 16:31:33 · 255 阅读 · 0 评论 -
Android系统源码下载地址
https://testerhome.com/topics/2229原创 2017-11-18 18:19:59 · 2054 阅读 · 0 评论 -
Android dp转换成px,px转换成dp
public class DensityUtil { /** * dp 转成px */ public static int dip2px(Context context, float dpValue) { final float scale = context.getResources().getDisplayMetrics().density;原创 2018-01-19 11:07:32 · 666 阅读 · 0 评论 -
Paint之Xfermode
Xfermode通过图片的组合模式,达到我们想要的效果。例如:刮刮卡。1、Xfermode的设置步骤 目标图像--》设置Xfermode模式--》源图像--》设置Xfermode模式为null(默认模式)。Xfermode只会对之后设置的图像有影响2、Xfermode的16种模式参考:https://www.jianshu.com/p/713584d018fc...原创 2019-04-18 23:15:14 · 181 阅读 · 0 评论 -
Android 线性渐变
转载:https://www.jianshu.com/p/a9d09cb7577f转载 2019-04-11 16:10:20 · 402 阅读 · 0 评论 -
requesLayout、invalidate、postInvalidate刷新View
requesLayout:会刷新整个视图树,导致整个视图重新mesure、layout、drawinvalidate:只会使当前view的重绘(draw),在UI线程中重绘postInvalidate:只会使当前view的重绘(draw),在非UI线程中重绘如下图所示:参考:https://blog.csdn.net/a553181867/article/details/...原创 2019-04-11 10:31:11 · 117 阅读 · 0 评论 -
Butterknife的使用
一、配置 在工程的build.gradle中进行如下的配置classpath 'com.jakewharton:butterknife-gradle-plugin:8.5.1' 在module的build.gradle中进行如下的配置apply plugin: 'com.jakewharton.butterknife implementa...原创 2019-04-10 16:22:40 · 92 阅读 · 0 评论 -
地图
1、高德地图在使用自定义InfoWindow时,在getInfoWindow方法中引用的布局中,如果有ImageView,那么它的大小是30X30时,会出现问题,在50X50时,就不会有问题原创 2018-07-30 15:00:44 · 107 阅读 · 0 评论 -
SimpleDateFormat需要sdk最低版本号为24的问题
之所以会出现这样的问题是因为导入的包的问题,我导入的包为“android.icu.text.SimpleDateFormat”,这个是在sdk版本24之后出现的,应改成Java提供法的包,为“java.text.SimpleDateFormat”。原创 2017-10-25 10:41:06 · 908 阅读 · 0 评论 -
C++中的命名空间(using name std)
C++把标准库中的类、方法与变量等放在命名空间std中,所以为了避免我们声明的类、方法与变量等与库中的相冲突,所以我们在写C++代码时,也使用了命名空间std。原创 2017-06-23 17:48:34 · 801 阅读 · 0 评论 -
Activity反转后,Activity的生命周期的变化
Activity在反转后,会导致前一个Activity的销毁,会生成一个全新的Activity,生命周期为:onPause--->onStop--->onDestroy--->onCreate--->onStart--->onResume.原创 2017-07-01 15:20:33 · 177 阅读 · 0 评论 -
Android内存优化大全(下)
1、BraodcastReceiver,ContentObserver,FileObserver,Cursor在Activity onDeatory或者某类声明周期结束之后一定要unregister或者close掉,否则这个Activity类会被system强引用,不会被内存回收。2、 不要直接对Activity进行直接引用作为成员变量,如果不得不这么做,请用private WeakRe转载 2015-11-20 09:04:21 · 382 阅读 · 0 评论 -
关于Bitmap导致的内存问题
不能使用以下的代码释放内存:if(bitmap != null && !bitmap.isRecycled()){ bitmap.recycle(); bitmap = null; } System.gc();应该使用:setBackgroundResource(0)、setBackgroundDrawable (null)或setBackgro原创 2015-11-16 17:12:29 · 322 阅读 · 0 评论 -
android 的Animation
rotate 属性:shareInterpolator:是否共享该动画插入器interpolator:插入器的旋转速率pivotX与pivotY:以上两个属性值 从0%-100%中取值,50%为物件的X或Y方向坐标上的中点位置fromDegrees:为动画起始时物件的角度,正值时为顺时针方向,负值时为逆时针方向toDegrees:属性为动画结束时物件旋转的角度 ,可原创 2015-10-29 17:45:42 · 217 阅读 · 0 评论 -
android开发的一些网址
一.demo:1.http://www.oschina.net/project/tag/342/android-ui原创 2015-11-13 17:08:12 · 228 阅读 · 0 评论 -
Android打开文件代码
public static Intent openFile(String filePath){ File file = new File(filePath); if(!file.exists()) return null; /* 取得扩展名 */ String end=file.getName().su转载 2015-10-12 09:43:05 · 404 阅读 · 0 评论 -
ImageView.ScaleType设置图解
http://blog.csdn.net/larryl2003/article/details/6919513原创 2015-10-27 10:25:36 · 272 阅读 · 0 评论 -
xUtils的使用教程
http://blog.csdn.net/dj0379/article/details/38356773原创 2015-10-13 11:28:56 · 259 阅读 · 0 评论 -
android数据库支持的数据类型
NULL、INTEGER、REAL、TEXT、BLOB但是,sqlite3也支持如下的数据类型smallint 16位整数integer 32位整数decimal(p,s) p是精确值,s是小数位数float 32位实数double 64位实数char(n)原创 2015-10-20 12:01:28 · 1338 阅读 · 0 评论 -
android屏幕适配
1、在mainfest中定义程序支持的屏幕类型2、对不同的屏幕大小提供不同的layout,如layout-1080x1920或者layout-small(屏幕尺寸在3英寸左右的布局)、layout-normal(屏幕尺寸在4.5英寸左右)、layout-large(4英寸-7英寸之间)、layout-xlarge(7-10英寸之间)。3、把不同分辨率屏幕的图片放在不同的drawable文件原创 2015-07-23 13:38:20 · 378 阅读 · 0 评论 -
内存优化
引起内存泄露的原因:1、listview中的adapter没有对contentView进行复用2、使用SQLite数据库保存数据的时候,使用完毕后没有关闭游标指,浪费了大量的内存在Curse对象上3、Activity销毁时,没有销毁Activity中的对象4、Bitmap的使用是将图片加载到内存中,使用完Bitmap后,要释放其对象。文章摘自:http://blog.c转载 2015-07-23 10:31:33 · 207 阅读 · 0 评论 -
onInterceptTouchEvent()和onTouchEvent()
onInterceptTouchEvent():这个方法根据返回值决定动作是否从父控件到子控件,如果为true,则传递,若为false,则不传递。onTouchEvent():这个方法根据返回值决定动作是否从子控件到父控件,如果为true,则传递,若为false,则不传递。原创 2015-07-21 16:11:05 · 235 阅读 · 0 评论 -
Android Bitmap的使用
Bitmap对象占用的内存,需要使用recycle()函数来表明该内存可回收,不然占用的内存只能使用finalizer。finalizer并不可靠,再次就是如果不调用recycle()需要回收Native Memory中的内存的话会导致一次完整的GC,GC执行的时候会暂停整个应用,程序被分配的内存越大,GC的时间越长。原创 2015-11-20 17:09:20 · 259 阅读 · 0 评论 -
Android--------- Bitmap.Config ARGB_8888
android——Bitmap.Config ARGB_8888Bitmap.Config有以下几个常量:1234public static final Bitmap.Config ALPHA_8public static final Bitmap.Config ARGB_4444 public static final Bit转载 2015-10-30 15:29:27 · 306 阅读 · 0 评论 -
Android环境搭建(Eclipse)
1.安装JDK2.安装Eclipse 3.安装ADT。在Eclipse中安装插件可以直接把插件的解压文件夹复制到Eclipse安装目录中的dropins文件夹下,这些文件夹可以与dropins文件夹隔着一个文件夹,也可以不隔。4.把本地的Android SDK关联到Eclipse上,或者自行下载原创 2017-05-30 16:25:06 · 237 阅读 · 0 评论 -
Servicet
1.Service不是一个进程,它与应用在同一个进程中,它也不是一个线程,也不在子线程中。Service不能处理耗时的操作,不然会出现ANR。IntentService会将要请求打开的服务,放入队列中,然后开启一个工作子线程来完成操作,并且第二个服务要在第一个服务中执行完成后,再执行。IntentService开启服务的方式为:startService(new Intent(this,MyIn原创 2015-10-28 16:06:22 · 295 阅读 · 0 评论 -
Android Studio JUnit单元测试
在Android Studio 2.2版本上,不需要在AndroidManifest.xml进行任何的配置。在创建项目的时候已经把JUnit单元测试使用到的依赖包写进了build.gradle中,并在build.gradle中进行了如下的配置 defaultConfig { applicationId "com.example.administrator.junitdemo_1"原创 2016-12-27 16:28:47 · 519 阅读 · 0 评论 -
Android安全退出应用程序的几种方式ying用
第一种方法:首先获取当前进程的id,然后杀死该进程。 建议使用这种方式android.os.Process.killProcess(android.os.Process.myPid())第二种方法:终止当前正在运行的Java虚拟机,导致程序终止System.exit(0);或者Runtime.getRuntime().exit(0);转载 2015-07-15 10:15:09 · 508 阅读 · 0 评论 -
Android Gradle介绍
http://segmentfault.com/a/1190000002439306原创 2016-01-27 15:56:55 · 295 阅读 · 0 评论 -
android private libraries、android dependences与reference libraries的区别
android private libraries :添加在libs下的第三方包会自动添加到这里。android dependences :右键项目——properties——andriod 底下的is library勾选并添加的包都会在这里面。reference libraries:右键通过bulid path的第三方包都会在这里面。(项目下新建lib文件夹或者任意,把第三方包放在这里)原创 2015-12-25 09:34:34 · 363 阅读 · 0 评论 -
Android 内存分析工具MAT(中)
1.资源对象没关闭造成的内存泄露 资源性文件对象(如Cursor,File文件等)往往都用了一些缓冲,我们在不使用的时候,应该及时关闭它们,以便它们的缓冲及时回收内存。它们的缓冲不仅存在于Java虚拟机内,还存在于虚拟机外,如SQLiteCursor(在析构函数finalize(),如果我们没有关闭它,它自己会调用close()关闭),如果我们没有关闭它,系统会在回收它时也会转载 2016-01-06 16:12:03 · 300 阅读 · 0 评论 -
Android 内存分析工具MAT(下)
前言在使用Memory Analyzer tool(MAT)分析内存泄漏(一)中,我介绍了内存泄漏的前因后果。在本文中,将介绍MAT如何根据heap dump分析泄漏根源。由于测试范例可能过于简单,很容易找出问题,但我期待借此举一反三。一开始不得不说说ClassLoader,本质上,它的工作就是把磁盘上的类文件读入内存,然后调用java.lang.ClassLoader.defin转载 2016-01-06 15:46:51 · 243 阅读 · 0 评论 -
Android 内存分析工具MAT(上)
不过MAT这类工具可以帮助你更好的对memory进行分析。使用MAT之前有2个概念是要掌握的:Shallow heap和Retained heap。Shallow heap表示对象本身所占内存大小,一个内存大小100bytes的对象Shallow heap就是100bytes。Retained heap表示通过回收这一个对象总共能回收的内存,比方说一个100bytes的对象还直接或者间接地持有原创 2015-11-20 17:41:08 · 359 阅读 · 0 评论