Android学习
文章平均质量分 72
vonnie_jade
这个作者很懒,什么都没留下…
展开
-
Android 屏幕适配
Android屏幕适配主要有五种方法:图片适配、布局适配、尺寸适配、权重适配、代码适配。前两种不太常用,后三种用的较多。图片适配开启4种分辨率的模拟器在drawable的多个目录下放置内容不同但命名相同的图片运行程序,查看在不同模拟器上的显示效果常规做法: 美工只做一套1280*720的图片,放置在drawable-xhdpi的目录下, ImageView宽高指定为确定的值, 不包裹屏幕原创 2016-03-04 19:29:09 · 200 阅读 · 0 评论 -
Android中使用AspectJ
aop学习 深入理解Android之AOP什么是AOPAOP是Aspect Oriented Programming的缩写,即『面向切面编程』。它和我们平时接触到的OOP都是编程的不同思想,OOP,即『面向对象编程』,它提倡的是将功能模块化,对象化,而AOP的思想,则不太一样,它提倡的是针对同一类问题的统一处理,当然,我们在实际编程过程中,不可能单纯的安装AOP或者OOP的思想来编程,很多时候,可能原创 2017-04-02 21:01:55 · 2588 阅读 · 0 评论 -
JVM垃圾收集器
垃圾标记策略引用计数算法:给对象添加一个引用计数器,当有地方引用时,计数器就加一;当引用消失时,计数器减一。当引用为0时,对象就会被回收。引用计数算法实现简单,判定效率很高,在大多数情况下是一个不错的算法,但这种算法有一种缺陷,如下面的代码,当两个对象相互引用时,并且这两个引用不可能被访问时,他们的引用数都不为0。但是,运行程序会发现,它们被回收了,这是因为jvm还使用了另一种算法–可达性分析算法原创 2017-03-12 20:25:04 · 208 阅读 · 0 评论 -
RecyclerView的分割线:ItemDecoration
使用ListView时,设置分割线很容易,但是用RecyclerView就会麻烦一点。一般都需要重写ItemDecoration,并给RecyclerView设置ItemDecoration。下面来介绍一下ItemDecoration中几个比较重要的方法。getItemOffsets(Rect outRect, View view, RecyclerView parent, State state原创 2016-10-12 19:30:04 · 768 阅读 · 0 评论 -
Android中使用surfaceview+MediaPlayer播放视频
android中播放视频主要有两种方式:使用其自带的播放器。指定Action为ACTION_VIEW,Data为Uri,Type为其MIME类型使用android自带的VideoView,这种方法太简单就不介绍了使用SurfaceView+MediaPlayer,这种方式效果比较好,这里也重点介绍SurfaceView从android 1.0就有了,十分好用。一般来说,UI对刷新都需要在UI原创 2016-07-30 14:24:33 · 3615 阅读 · 2 评论 -
设置状态栏透明
什么是透明状态栏android4.4后的版本可以让最上方的状态栏透明化,效果如下图 我们可以通过代码来修改,具体代码如下 @Override protected void onCreate(Bundle savedInstanceState) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {原创 2016-06-06 20:50:28 · 350 阅读 · 0 评论 -
Android动态加载jar
之前,被人问到Android如何动态加载jar,当时不知道,一脸蒙B,就研究了一下。 首先需要创建一个jar包,不太清楚怎么样用Android studio创建jar包的同学可以看一下我的另一篇博客Android Studio导出Jar包。 新建一个Math类public class Math { public int getSum(int a,int b){ retur原创 2016-04-20 11:53:53 · 366 阅读 · 2 评论 -
Android中使用NDK
首先用Android Studio下载NDK 这个比较简单,就不多说了1.写调用jni的Java代码新建一个JniUtils类public class JniUtils { static { System.loadLibrary("test"); } public native String getString();}代码会报错,先不管,在后面解决跟方原创 2016-04-18 14:59:06 · 258 阅读 · 0 评论 -
Android中图片处理相关问题
在Android的开发中,我们经常回去处理一些图片相关的问题,比如当加载图片到内存中产生的OOM(OutOfMemory)异常、图片加载到内存中占多大内存的问题、jpg png两种常见的图片的原理及区别。图片加载到内存所占内存大小的问题在讲OOM异常前需要对图片的加载有所了解,所以在这里就先介绍图片加载的问题。 图片加载到内存中的大小,不是直接由图片的存储大小来决定的。比如一个10k大小的png格原创 2016-04-09 17:41:42 · 249 阅读 · 0 评论 -
Android Studio导出Jar包
这篇博客将介绍一下如何用Android Studio导出jar包,希望能给大家带来帮助。首先需要修改build.gradle文件,在Android Studio中会显示多个build.gradle文件,如果你想要将整个项目导出成jar包,就找到对应项目名目录下的build.gradle文件,对其进行修改。有如下几个地方需要修改将最前面的apply plugin: 'com.android.appl原创 2016-03-15 17:23:34 · 659 阅读 · 0 评论 -
Android中的一些基础知识(三)
最近在回顾Android的基础知识,就把一些常见的知识点整理一下,以后忘了也可以翻出来看一看。在TextView中显示图像(使用< img>标签)在TextView中显示图片的方法有许多种,常见的有通过View.setBackground()来设置背景、在onDraw方法中绘制。这里我讲一下用< img>标签来设置图像。 TextView可以通过富文本标签来显示富文本信息,这种标签类似于HTML原创 2016-03-14 22:01:48 · 293 阅读 · 0 评论 -
Android消息机制之Handler
Android为什么要提供HandlerAndroid建议我们不要在UI线程中执行耗时操作,因为这很容易导致ANR异常(在Android源码中我们可以看到,UI如果对用户的操作超过5秒无响应,就会报ANR异常)。因此,一些耗时操作都会在子线程中完成。当我们在子线程中获取了数据,要将其显示到UI中,如果没有Handler,这将很难完成。因此,Android之所以提供Handler,就是为了解决子线程访原创 2016-03-08 22:11:04 · 267 阅读 · 0 评论 -
Android中的一些基础知识(二)
这几天在回顾Android的基础知识,就把一些常见的知识点整理一下,以后忘了也可以翻出来看一看。简单介绍一下Activity的生命周期 在API文档中对生命周期回调的函数描述的很详细,这里我只是翻译了一下。onCreate:当Activity第一次被创建的时候调运。应该在这个回调函数中做所有的初始化操作,比如:创建View,给lists绑定数据等。在这个函数执行完后,通常会调运onStart方法。原创 2016-03-13 17:21:36 · 320 阅读 · 0 评论 -
Android中的一些基础知识(一)
翻译自这里,并做了部分修改。什么是Android? Android是为移动设备提供的软件,它包括操作系统、中间件、和一些关键的应用程序。应用程序执行它自己的进程和在Dalvik虚拟机中的实例。Android应用程序体系结构描述 Services−将执行后台功能 Intent −将执行国际活动和数据传递机制之间的联系 Resource Externalization(资源外化)−字符串和图翻译 2016-03-10 09:53:51 · 232 阅读 · 0 评论 -
Android学习之DragEvent
DragEvent中的事件类型原创 2016-03-22 16:49:44 · 4052 阅读 · 0 评论 -
Android学习之Drawable(一)
Drawable有很多种,它们表示一种图像概念,但它们不全是图片。Drawable是什么呢?下面是Google Android API中的定义: A Drawable is a general abstraction for “something that can be drawn.” Most often you will deal with Drawable as the type of r原创 2016-03-10 22:05:52 · 241 阅读 · 0 评论 -
Android滑动事件冲突(demo演示)
首先,我们假设这样一个场景:一个ViewPager里面嵌套一个ViewPager,内部滑动方向和外部滑动方向一样时,该怎么解决这一冲突呢?再如:一个ViewPager里嵌套一个Listview呢? 针对滑动冲突这里给出两种解决方案:外部拦截法,内部拦截法外部拦截法情景:一个ViewPager嵌套了一个Listview,一个是左右滑动,一个上下滑动。这个时候我们可以用外部拦截法,来处理冲突。在父容原创 2016-03-07 16:39:13 · 785 阅读 · 0 评论 -
Activity的启动模式
activity有四种启动模式,分别为standard,singleTop,singleTask,singleInstance。原创 2016-03-05 18:37:52 · 202 阅读 · 0 评论 -
Android创建窗口(一)创建应用窗口
所谓的窗口(Window)就是一个显示在手机屏幕上可视化视图的一片区域。在Android中窗口是一个抽象的概念,每一个Activity就对应着一个窗口,而所有的窗口都是由视图(View)来呈现,而我们知道View构成的一个树形结构的视图就组成了一个Activity的界面了。在android系统中窗口分为三个类型:应用窗口:所谓应用窗口指的就是该窗口对应一个Activity,因此,要创建应用窗口就必原创 2017-07-17 19:42:54 · 1299 阅读 · 0 评论