Android学习
文章平均质量分 56
LCY天上殿
这个作者很懒,什么都没留下…
展开
-
调用摄像头和相册(调用摄像头拍照和从相册中选择图片)
public class MainActivity extends Activity { public static final int TAKE_PHOTO=1; public static final int CROP_PHOTO=0; public static final int CHOOSE_PHOTO=3; private ImageView picture; private原创 2015-12-08 12:07:00 · 1230 阅读 · 0 评论 -
Android——属性动画(Property Animation)
最近在看Android群英传,主要针对Android群英传中的介绍,对Android中属性动画进行概括一下。 相比于视图动画,属性动画的一个最大的优点就是动画可以响应事件,最常使用的几个类: ObjectAnimator, PropertyValuesHolder,ValueAnimator,AnimatorSetObjectAnimatorObjectAnimator是属性动画中最重要的实行类原创 2016-04-11 15:49:26 · 449 阅读 · 0 评论 -
Android——自定义动画
自定义动画:重写父类的initialize完成初始化操作,实现applyTransformation逻辑 第一个例子:实现电视关闭时屏幕的关闭效果public class CustomAnim extends Animation { private int mCenterWidth; private int mCenterHeight; @Override publ原创 2016-04-11 16:33:01 · 410 阅读 · 0 评论 -
Android——多线程
Android上的进程在了解Android线程之前得先了解一下Android的进程。当一个程序第一次启动的时候,Android会启动一个LINUX进程和一个主线程。默认的情况下,所有该程序的组件都将在该进程和线程中运行。同时,Android会为每个应用程序分配一个单独的LINUX用户。Android会尽量保留一个正在运行进程,只在内存资源出现不足时,Android会尝试停止一些进程从而释放足够的资源原创 2016-04-18 12:57:20 · 619 阅读 · 0 评论 -
Android——自定义View(学习Android开发与艺术探索)
ViewRoot和DecorViewViewRoot对应于ViewRootImpl类,是连接WindowManager和DecorView的纽带,View的三大流程均是通过ViewRoot来完成的。在ActivityThread中,当Activity对象被创建完毕后,会将DecorView添加到Window中,同时会创建ViewRootImpl对象,并将ViewRootImpl对象和DecorVie原创 2016-05-26 16:14:48 · 5463 阅读 · 0 评论 -
Android优化列表的卡顿现象
重要的一点:不要在主线程进行耗时操作即可提高滑动的流畅度不要在getView中执行耗时操作。直接在getView中加载图片肯定会卡顿,因为加载图片是耗时操作,这种操作必须采用异步的方式处理,如ImageLoader中的实现控制异步任务的执行频率,getView中使用ImageLoader的bindBitmap方法异步加载图片,但是当用户频繁的上下滑动,这样一瞬间会有上百个异步任务,这些异步任务会原创 2016-05-26 16:19:05 · 3550 阅读 · 0 评论 -
Android——MVP架构
MVC和MVP的区别MVC(Model View Controller),Model就是模型、View是视图、Controller就是控制器,(对应于Activity)。 Model在MVC架构中是真正的业务逻辑实现层,所以Model实际上是Business Model(业务模型)。而Controller主要负责把View的请求转发给Model,再把Model处理结果通知给View,Control原创 2016-04-20 14:27:34 · 451 阅读 · 0 评论 -
Android——天气预报(MVP、Gson和天气、百度地图Api的练习)
首先给出效果图: 使用到的相关知识: Android开发中的MVP架构 使用Gson解析数据 天气预报(随身云天气预报API)、百度地图API(Geocoding API) 很适合新手学习(本人也是Android菜鸟),有兴趣的可以下载源码看一下。 下载地址: https://github.com/Knightlcy/LocalWeather原创 2016-04-21 15:25:06 · 1551 阅读 · 1 评论 -
Android——View的事件分发机制(学习Android开发艺术探索)
点击事件的事件分发(其实就是对MotionEvent事件的分发过程),当一个MotionEvent产生以后,系统需要把这个事件传递给某个View,这就是分发过程。 此分发过程主要由三个方法组成: public boolean dispatchTouchEvent(MotionEvent ev):用于事件的分发,若事件传递给当前的View此方法就会被调用,返回结果受当前View的onTouchEv原创 2016-05-19 09:52:43 · 568 阅读 · 0 评论 -
图片加载库Glide——解决图片错乱+无法设置tag
今天在写一个图片加载类ImageLoader,在使用的时候想用Glide替代我写的ImageLoader,然后问题就出来了!!!第一个问题:在使用自己写的ImageLoader的时候,为了防止item复用导致的图片错乱,设置了Tag 如下代码 @Override public View getView(int position, View convertView, Vi原创 2016-05-23 21:20:07 · 19979 阅读 · 16 评论 -
Android 绘图XML——Shape
Shape可以在XML中绘制各种形状,功能十分强大,能实现扁平化、拟物化和渐变 使用shape可以自定义形状,可以定义下面四种类型的形状,通过android:shape属性指定: rectangle: 矩形,默认的形状,可以画出直角矩形、圆角矩形、弧形等 oval: 椭圆形,用得比较多的是画正圆 line: 线形,可以画实线和虚线 ring: 环形,可以画环形进度条 下面是常用到原创 2016-03-29 11:04:36 · 650 阅读 · 0 评论 -
Android——屏幕尺寸
一.屏幕参数屏幕的大小:就是常说的手机屏幕是几寸的 屏幕的分辨率:例如 小米三分辨率1920×1080 宽上有1080个像素 高上有1920个像素 每英寸的像素:PPI/DPI 对角线的像素点除以屏幕的大小 系统的屏幕密度 官方给出的标准的DPI的值: 密度:ldpi 密度值:120 分辨率:240X320 密度:mdpi 密度值:160 分辨率:320X480原创 2016-03-29 10:57:16 · 435 阅读 · 0 评论 -
Android 绘图XML——layer-list
layer-list可以用来实现图层,图片依次叠加<?xml version="1.0" encoding="utf-8"?><layer-list xmlns:android="http://schemas.android.com/apk/res/android"><itemandroid:drawable="@mipmap/ic_launcher"></item><itemandroi原创 2016-03-29 13:44:06 · 526 阅读 · 0 评论 -
Android 绘图XML——Selector
selector可以实现归于不同的事件设置不一样的图像,例如点击按钮前后按钮背景变化 selector标签,可以添加一个或多个item子标签,而相应的状态是在item标签中定义的。定义的xml文件可以作为两种资源使用:drawable和color。作为drawable资源使用时,一般和shape一样放于drawable目录下,item必须指定android:drawable属性;作为color资源原创 2016-03-29 13:45:36 · 461 阅读 · 0 评论 -
活动的生命周期(Activity Lifecycle)
1.活动是通过活动栈进行管理的,当一个新的活动开始时,它被放在栈的最顶端,在栈中它的前一个活动会放在当前新活动的下面。2.一个活动有最重要的四种状态: 当它在屏幕的最前端的时候(在栈的顶端),此时它是处于运行状态。 当一个活动依旧是可见的 ,但是并不在屏幕的最前端(不在栈顶),此时它是处在暂停状态,暂停状态的活动仍旧是存活的,但是当内存极低的极端情况下,是可以被回收的。 当一个活动被另一个活动原创 2016-03-18 15:48:40 · 1312 阅读 · 0 评论 -
Android——四大组件的协同工作
在我们与一个app进行打交道的时候,我们看到的页面就是Activity提供的,Activity是人机交互的第一界面,负责向我们展示一些信息和结果,这些信息可以通过资源的获取,可以是Service从后台返回的数据,也可以是ContentProvider获取到的其他应用的信息,同样可以是BroadCast Reciever获取到的广播信息。四大组件之间的交互主要是通过Intent来传递信息、交换数据。四原创 2016-04-13 10:18:57 · 404 阅读 · 0 评论 -
Android——RecyclerView和CardView的学习
本文主要通过一个简单小例子来简单的介绍一下RecyclerView和CardView,要是想详细的学习RecyclerView,可以看鸿洋的写的关于RecyclerView的博客。 RecyclerView是对ListView的升级,与ListView相比一个明显的区别就是RecyclerView将ViewHolder的实现封装起来,用户只需要实现自己的ViewHolder,就可以实现回收服用每一原创 2016-04-09 13:18:12 · 534 阅读 · 0 评论 -
Android——Service(服务)
1.What is a Service?服务是Android中实现后台运行的解决方案,适合去处理那些不需要与用户进行交互且要求长期去运行的任务(服务的运行不依赖于任何的界面,即使当程序被切换到后台的时候,或者用户打开另一个应用程序,服务仍能够保持正常的运行)。注意点: (1)服务并不是一个独立的进程,而是运行在创建服务所在的应用程序进程当中,它只是其中的一部分。 (2)服务并不是一个线程,它并原创 2016-03-29 10:41:49 · 381 阅读 · 0 评论 -
App Bar上的一系列操作
要点:共三部分1.Adding and Handling Actions(添加和处理操作)2.添加 Up Action3.Action Views and Action Providers第一部分:Adding and Handling Actions(添加和处理操作)1.Add Action Buttons(添加操作按钮)为了在action bar添加行为, 在r原创 2015-12-06 21:49:03 · 673 阅读 · 0 评论 -
Android——Volley学习
Voley简介Android系统中主要提供两种方式进行HTTP通信,HttpURLConnection和HttpClient。在进行使用的时候如果不进行封装,很容易出现很多重复的代码。 Google推出网络通信框架Volley。Volley可进行HTTP通信,也可以加载网络上的图片。Volley适合进行数据量不大,但通信频繁的网络操作,不适合大数据量的网络通信。 使用Volley发送HTTP请求原创 2016-03-29 10:49:52 · 350 阅读 · 0 评论 -
Android——Scroll分析
一:滑动的产生原因滑动一个View原理:就是通过不断的改变View的坐标。 实现View的滑动,必须监听用户触摸的事件,根据触摸传入的坐标,动态的改变View的坐标,从而实现滑动 Android的坐标系:Android中屏幕的最左上端的点就是原点,向右就是X坐标轴的正方向,向下就是Y坐标轴的正方向 系统提供的getLocationOnScreen(intlocation[])方法获取Andro原创 2016-03-29 10:55:49 · 349 阅读 · 0 评论 -
Android——初识RxJava
最近在看RxJava,在这里分享一下自己看的一些介绍RxJava不错的文章。 这是RxJava和RxAndroid在Github上的链接: RxJava Github主页:RxJava Github主页 RxAndroid Github主页:RxAndroid Github主页 下面是大头鬼Bruce对RxJava介绍的译文: 1.深入浅出RxJava(一:基础篇) 2.深入浅出RxJ原创 2016-06-18 15:42:21 · 3664 阅读 · 0 评论