
Android
文章平均质量分 85
android_cmos
这个作者很懒,什么都没留下…
展开
-
Android View的生命周期
大家都知道Activity的生命周期,那view的生命周期呢?除了常见的onMeasure,onLayout,onDraw,这些和Activity中的onCreate、onStart、onResume的执行先后顺序是什么呢?View的生命周期从构造方法开始依次执行以下几个方法,该View的可见性为默认值时:(0)Constructors()View在代码中被创建时调用第一种构造方法,View...原创 2020-03-10 15:06:13 · 1879 阅读 · 0 评论 -
MPAndroidChart3.0使用详解(一)----基本属性设置
说到Android中的图表库,除了老牌的谷歌推荐的Achartengine图表库,那不得不提一下MPAndroidChart这个类库了,相比前者,后者功能十分丰富,github的star超过17K。其支持直方图(柱状图)、折线图、饼状图、气泡图、雷达图、散点图、蜡烛图、组合图。支持缩放、点击事件、动画效果等。截至于本文,最新的版本是3.0.2,相比以前的2.x的版本,功能上有很大的丰富,支持的属性更原创 2017-07-27 22:50:11 · 7144 阅读 · 1 评论 -
MPAndroidChart3.0使用详解(二)----柱状图、折线图、组合图的使用
上篇主要讲到了MPAndroidChart这个开源库的一些基本特性和基础设置,现在来讲下我们经常要用到的柱状图(直方图)、折线图和组合图的使用。柱状图再讲之前,先看效果图。 第一个是单个柱状图,第二个是组合(group)的柱状图 使用 1、首先先创建BarChart对象,并初始化,进行些基础设置 2、为BarChart添加对象,利用BarEntry添加x轴,y轴的数据 3、初始化Bar原创 2017-08-06 21:57:14 · 7196 阅读 · 2 评论 -
Android中如何实现后台执行定时任务
Android中的定时任务一般有两种实现方式,一种是使用Java API里的Timer类,另一种是使用Android的Alarm机制。 这两种方式在多数情况下都能实现类似的效果,但Timer有一个明显的短板,它并不太适用与那些需要长期在后台运行的定时任务。As we know,为了能让电池更加耐用,每种手机都会有自己的休眠策略:比如手机不用的时候智能的断开wifi连接,根据光线强弱自原创 2016-03-01 21:04:34 · 6328 阅读 · 5 评论 -
Android button自定义样式显示
一个好的APP从直观上最能吸引用户的必定是好看的UI界面及良好的交互体验和特效,有时甚至连主要功能都是次要的!好吧,软件也到了拼脸的时代,主要看气质! 所以这篇文章就聊聊button的自定义样式显示,下一篇聊聊Android动画。 1.通过XML文件设置属性 定义后和未定义的对比 给button添加自定义的显示也非常简原创 2016-04-02 23:23:57 · 1860 阅读 · 0 评论 -
Android中ListView响应Item内部点击事件
ListView(GridView)是我们在实际开发中经常用到的,一般的Item也会随着需求,增加很多功能,比如单个item的点击事件,比如我们购物时,单个物品的点击+和-,表示选择数量,即响应item的内部点击事件,同时又不能和整体item的点击事件冲突。当然我们可以直接在adpter的getView中直接做内部按钮的点击处理,但是这样写的化,按钮一多的话,就显得整体代码比较拥挤,而且把Acti原创 2016-06-14 22:26:23 · 37015 阅读 · 6 评论 -
Android开发人员不得不收集的代码(持续更新中)
本文转载至http://blog.youkuaiyun.com/a120705230/article/details/52076522,感谢原作者的辛勤劳动! 做这份整理是想把它作为Android开发的小字典,当遇到一些琐碎问题时,不用再面向百度或者谷歌查询API的使用,费时费力,这里有的话,大家尽管撸走.作者代码地址:https://github.com/Blankj/AndroidUtilCode 这里转载 2017-06-22 21:54:47 · 788 阅读 · 0 评论 -
Android实现控件滑动的几种方法
手指滑动一个控件View,从本质上来说就是移动一个View,改变其当前所处的位置,它的实现原理与动画效果的实现类似,都是通过不断的改变View的坐标来实现这个效果。相比于老版本中的控件的操作是点击和长按,而目前基本上应用都利用了滑动的操作方式来增加用户的体验,所以有必要来了解下Android的控件滑动的几种方法。在实现滑动效果之前,首先先认识下Android中窗口坐标体系和屏幕的触摸事件---原创 2017-03-17 23:05:08 · 13841 阅读 · 0 评论 -
Android自定义可拖拽的悬浮按钮---DragFloatingActionButton
悬浮按钮FloatingActionButton是Android 5.0系统添加的新控件,FloatingActionButton是继承至ImageView,所以FloatingActionButton拥有ImageView的所有属性。本文讲解的是一个实现了可拖拽的悬浮按钮,并为此添加了类似于qq的吸附边框的功能。在此之前,先了解下其简单的使用方式吧: 首先你得添加其依赖compile 'com.原创 2017-06-21 23:10:02 · 19638 阅读 · 13 评论 -
RxJava零基础入门(二)
前言本文转载自http://www.jianshu.com/p/240f1c8ebf9d 本文主要给大家补充一下上一篇遗留的Subject知识,没看过上一篇的同学、忘了上一章写什么的同学、还有其他同学,请进入时光机:Rxjava零基础入门(一)温习一遍,俗话说,“书读百遍,奇异自见”,看多一遍是一遍,多多益善嘛。温习完的,请回来继续听讲。关于Subject关于Subject,官方文档的解释是这样的转载 2017-05-19 21:49:26 · 562 阅读 · 0 评论 -
Android中利用RecyclerView实现瀑布流效果
RecyclerView相比于传统的ListView,功能更加强大,使用也比较方便,因此Android官方更加推荐使用RecycleView,未来也会有更多的程序逐渐从ListView转向RecycleView。为此,首先先来了解下RecycleView的用法。RecycleView属于新增的控件,为了让RecyclerView在所有的Android版本上都能使用,系统将RecyclerVie原创 2017-03-10 18:55:54 · 3865 阅读 · 0 评论 -
Android快速获取当前Activity类名的三种方法
据说程序猿最讨厌的两件事:一是给代码写详细的注释;二是阅读别人的代码没注释。在程序猿的世界里,大部分都是接手的别人的项目,而对于一些项目文档全面,项目代码规范,在阅读代码的时候相对轻松些,不至于当前是哪个Activity都不知道。But,理想是丰满的,现实是骨感的。规范的一点的,会写个BaseActivity,让项目中所有的Activity继承这个BaseActivity,然后再Activity中获原创 2017-06-17 20:00:22 · 52795 阅读 · 4 评论 -
Android中各种getRawX,getX,getWidth,getTranslationX等的区别。
当我们在自定义View,或者处理一些滑动/触摸事件时,就需要计算距离操作了,而系统也提供了各种方法来满足我们不同的需求,有些东西你不用就很容易忘记,现在整理下,方便后面查找。希望对大家有帮助,如有谬误,欢迎批评指正,如有疑问欢迎留言。 -图片直观的认识 先用图片表示了直观的表现下这几个距离的意义,原图片出自这里 -getX、getRawX、getWidth、getTranslationX意义原创 2017-06-16 22:15:53 · 909 阅读 · 0 评论 -
Android ListView中Item点击事件失效解决方案
在平常的开发过程中,我们的ListView可能不只是简单的显示下文本或者按钮,更多的是显示复杂的布局,这样的话,我们就得自己写布局和自定义adapter了,一般是继承于BaseAdapter,写ListView的点击事件时OnItemClickListener,onItemClick方法没有执行,导致ListView中Item条目点击事件失效,而Item中的View点击事件可以在getView方法原创 2016-04-24 14:28:23 · 13145 阅读 · 2 评论 -
Android studio 利用gradle快速编译出apk
现在大部分Android开发人员用的都是Android Studio在开发,这也是官方的支持方案,还在Eclipse的用户,建议趁早换过来吧,因为github上的项目基本上都是利用Android Studio开发的,为了能少重复发明轮子,我们都会去github上下载一些demo过来进行参考学习。如果,博主有着很好的分享的精神,那么我们下来的demo那应该是完整的,导入工程可以用,在工程包里面也会有相转载 2017-11-07 19:51:50 · 3359 阅读 · 0 评论 -
Android性能优化点总结
Android性能优化,大致可从如下两个方向进行分析一、绘制优化a.UI绘制问题:应用启动慢,滑动或者点击卡顿解决方案1,从布局视图角度分析 I,使用HierarchyViewer工具检查是否需要优化布局。1)使用标签重用视图2)使用标签合并不需要或者是重复的节点。目的减少节点数量3)层次过深考虑使用自定义View。目的减少节点数量4)ViewSub延迟加载。当前不渲染总体目...原创 2019-07-19 17:54:54 · 387 阅读 · 0 评论 -
Android面试常见问题总结
1、AsyncTask是什么? 有什么缺陷?AsyncTask是一种轻量级的异步任务类,它可以在线程池中执行后台任务,然后把执行的进度和最终结果传递给主线程并在主线程中更新UI。多个AsyncTask对象是串行执行的。Android 1.5刚开始引入AsyncTask的时候,execute方法确实是串行执行的,类定义里面只有SERIAL_EXECUTOR线程池;到1.6版本时,改用并行线程池TH...原创 2019-07-19 17:30:20 · 5469 阅读 · 0 评论 -
Android图层妙用之layer-list的基本使用介绍
本文转载自layer-list – layer-list的基本使用介绍1. layer-list 是啥?有啥作用?1.1 layer-list 是什么?简单理解,layer 是层,list 是列表,那么 layer-list 就是层列表的意思。但是,是什么层列表呢?? 其实 layer-list 是用来创建 LayerDrawable 的,LayerDrawable 是 DrawableResour转载 2018-04-21 21:32:11 · 30383 阅读 · 2 评论 -
Android扫描wifi二维码自动连接wifi
现在二维码的用处越来越多,微信扫二维码加好友,商场扫二维码关注公众号、得优惠券,就连一些小餐馆吃个饭,扫码自动跳转到线上(饿了么,百度外卖)的店铺.....而这些地方因为人多,担心用户等待时间过长就会走掉,怎么办?得有空调、wifi、西瓜,这样才能留住一部分客人,而wifi密码一般是直接问店里服务员获取,但是时间一长,人一多,店里老板和员工也烦了,干脆直接把wifi密码贴出来。但是这些都不够,我认原创 2016-08-15 21:37:57 · 37380 阅读 · 16 评论 -
Android中WebView使用详解及注意事项
Webview使用详解webView作为Android中的一个控件,对于它真的是想说爱你不容易。网上找了一篇写的比较详细的文章,故转载过来了供参考,点击查看原文。前言现在很多App里都内置了Web网页(Hyprid App),比如说很多电商平台,淘宝、京东、聚划算等等,如下图 那么如何去实现这个呢?下面本文将介绍WebView的常用用法。目录1、简介WebView转载 2018-01-26 10:25:24 · 1318 阅读 · 0 评论 -
RxJava零基础入门(一)
本文转载自http://www.jianshu.com/p/5e93c9101dc5 谢谢原文作者. 注:这里使用的是RxJava1.x版的,最新的是RxJava2.x,但是基本思想是一样,依然可以拿这个先入门。文末有写的比较好的基于RxJava2.x系列的文章链接。前言相信各位看官对RxJava早有耳闻,那么关于什么是RxJava我就不再赘述了,不知道的可自行百度。如果你已经大致了解过什么是R转载 2017-05-18 20:48:24 · 715 阅读 · 0 评论 -
Android 自定义view之圆盘进度条
很久没有用到自定义View了,手有点生疏了,这不同事刚扔给一个活,按照UI的要求,画一个进度条,带动画效果的。需求是这样的: 嗯,实现后效果如下: 嗯,算是基本满足需求吧。 本文包含的知识点 1、自定义view的绘制 2、属性动画 3、图像的合成模式 PorterDuff.Mode嗯,废话不多说,show me the code 1)WordView.javaimport androi原创 2017-12-26 22:08:17 · 780 阅读 · 2 评论 -
Android图像合成模式之PorterDuff.Mode
本文转载自简书《各个击破搞明白PorterDuff.Mode》,链接地址如下:https://www.jianshu.com/p/d11892bbe055PorterDuff.Mode这个枚举变量主要用于Android中的图像合成PorterDuff.Mode是什么在android SDK Paint类中有一个很重要的方法setXfermode(源码如下)public Xfermode setXfe转载 2017-12-26 22:12:20 · 1368 阅读 · 0 评论 -
Android设备读写NFC标签
2016就这样静悄悄的过去了,最近也是颓废的不行,都没怎么充实自己了,每天练练车,打打游戏和麻将,书都基本没翻个几页,家里完全没有状态。2017,加油吧,为了事业和家庭,Fighting!关于接触到NFC这东西,是我2年前导师项目中认识到的,当时自己也是刚学Android,由于项目需要,所以自己当时承担了这方面的工作,由此也开启了我Android生涯。想当初我也是翻遍了网上的所有资料,基本上没...原创 2016-12-31 22:28:47 · 22787 阅读 · 62 评论 -
RxJava零基础入门(三)
本文转载自http://www.jianshu.com/p/5c221c58e141前言这篇讲RxJava中强大的Scheduler调度器 ,就是因为它,RxJava才能极其简便的在线程中切换,接着再讲一讲一些常用的操作符。没看过前两篇的,可以去温习下前面的基础。RxJava零基础入门(一) RxJava零基础入门(二)Scheduler在讲常用操作符前,先看看Scheduler这个东西,名之为转载 2017-05-21 19:50:45 · 846 阅读 · 0 评论 -
Android AlertDialog和PopupWindow使用和区别
在实际的开发中,我们经常会用到弹框,以此来显示一个警告或提醒或者提供一系列选项让用户选择。前段时间在开发时,要用到弹框,突然意识到好像两个都可以完成需求,当时我在想,那它们到底有什么区别呢?于是查了相关资料后,整理如下:先看下它们2个的用法吧1.AlertDialog的基本属性和用法AlertDialog是Dialog的子类,所以它包含了Dialog类的很多属性和方法,由于AlertD原创 2016-04-30 23:32:17 · 14998 阅读 · 3 评论 -
Android Notification的基本使用和点击跳转中的注意事项
1、Android 中通知栏的基本使用Notification,是一种具有全局效果的通知,可以在系统的通知栏中显示。当 APP 向系统发出通知时,它将先以图标的形式显示在通知栏中。用户可以下拉通知栏查看通知的详细信息。通知栏和抽屉式通知栏均是由系统控制,用户可以随时查看。 首先创建通知,需要一个NotificationManager来对通知进行管理,可以调用Context的getSystemSer原创 2017-10-31 22:31:41 · 6862 阅读 · 0 评论 -
Glide加载圆形图片报错:java.lang.AbstractMethodError: abstract method "void com.bumptech.glide.load.Key.updat
Glide是Google公司在2014年的I/O大会上发布的,到现在有3年左右了,最先版本已经到了4.0以上了。而现在Android上的图片加载框架非常成熟,从最早的老牌图片加载框架UniversalImageLoader,到后来Google推出的Volley,再到后来的新兴军Glide和Picasso,当然还有Facebook的Fresco。而Glide是目前谷歌公司推荐的图片加载工具,好,那我们原创 2017-06-15 22:33:41 · 5528 阅读 · 0 评论 -
android matrix 最全方法详解与进阶(完整篇)
本文转载自 http://blog.youkuaiyun.com/cquwentao/article/details/51445269因为前段时间在项目中做动画时,用到了Matrix,网上找了一篇,觉得写的不错,故转载过来了。向原作者表示感谢!1 概述这里我们会详细讲解matrix的各个方法,以及它的用法。matrix叫做矩阵,在前面讲解 ColorFilter 的文章中,我们讲解转载 2017-04-27 19:46:19 · 1035 阅读 · 0 评论 -
2分钟搞定利用Android Studio建立自己的项目依赖
相信使用Android Studio的同学都知道AS有个很好用的地方,就是它可以添加项目依赖,这样就可以利用第三方包了,而不用像Eclipse一样要去下载相应的jar包。比如下面的典型的AS依赖如下:dependencies{compile 'com.squareup.picasso:picasso:2.5.1'compile 'com.github.bumptech.glide:glide:3原创 2017-05-12 21:42:45 · 1148 阅读 · 0 评论 -
Android 自定义View(一)
Android系统给我们提供了丰富的组件库来创建丰富的UI效果,同时也提供了非常方便的扩展方法。但是在实际开发中,有时为了项目的需求,不得不自己去“绘制”一个View,这个时候通常已经不能用系统自带的控件来设计了,这个时候就要自己定义“View”了,来满足项目的需求。通常有3种方法来自定义的控件1,对现有控件进行扩展2,通过组合来实现新的控件3,重写View来实现全新的控件原创 2016-06-15 23:04:24 · 817 阅读 · 0 评论 -
Android自定义View(二)
前面说到了自定义View一般有3种方式来实现,现在这里先说第一种实现方式,也是经常用到的--------对现有控件进行扩展。 在系统原生控件的基础上进行扩展,实现增加功能、修改UI等。一般来说,我们在onDraw()方法中对原生控件行为进行扩展。下面实现更改TextView的背景为例,为其多绘制几层背景。 原生的TextView使用onDraw()方法绘制显示的文字,当继承了原创 2016-06-28 22:58:40 · 673 阅读 · 0 评论 -
Android开发实用代码片段(一)
由于在开发中,常常会用到小功能或者属性或设置等,这些呢,我们也不会去记,经常去百度,但是过了段时间后呢,还是很容易忘记,又得去查。所以我决定了,以后对一些小技巧,收集记录下来,以备后用,所以此文会不断更新。1.获取设备屏幕宽高网络上代码段通常是这样的:WindowManager wm = (WindowManager) getContext()原创 2016-05-08 22:13:49 · 1896 阅读 · 0 评论 -
Android 截屏技术
虽然Android系统提供了以组合键的方式来截图,但是有时我们并不需要这么麻烦,而是想尽可能的简单的实现。基于这样的需求,前些天在开发应用时,碰到了屏幕截屏技术,没接触前以为很难,需要写各种代码,各种逻辑,接触后,发现实现关键代码就几行。但是并不满足于现状的我,很快就发现它并不能截取其他应用的界面,于是查了很多资料,还是很失望的,对手机的要求很高,要root,这大概就是市面上很多的截图应用为什么都原创 2016-05-19 23:07:03 · 1052 阅读 · 0 评论 -
Android 多媒体MediaPlayer使用详解
现在的手机功能越来越丰富了,遥想10年前,MP3,MP4,MP5,还是很流行的,博主当时读高中时很想拥有一台,可以听音乐和看电影。可是条件有限,学校也禁止此东西,所以只能偷偷的玩。而现在我们的手机也很早以前就支持了这些功能,而且界面和功能也远远超过了MP4。好吧,说多了,今天本文介绍的是Andriod系统自带的Mediaplayer,和VideoView实现简单的音乐和视频的播放,至于想做出如酷狗原创 2016-05-14 22:39:29 · 31471 阅读 · 3 评论 -
Android开发60条技术经验总结
1. 全部 Activity 可继承自 BaseActivity,便于统一风格与处理公共事件,构建对话框统一构建器的建立,万一需要整体变动,一处修改到处有效。2. 数据库表段字段常量和 SQL 逻辑分离,更清晰,建议使用 Lite 系列框架 LiteOrm 库,超级清晰且重心可以放在业务上不用关心数据库细节。3. 全局变量放全局类中,模块私有放自己的管理类中,让常量清晰且集中.转载 2016-05-16 22:02:37 · 795 阅读 · 0 评论 -
Android BroastCast的使用详解
作为Android四大组件之一的BroadCast,虽然用的不多,但是用处还是挺大的,比如监听来电或短信状态、电量和wifi的状态、开机启动状态等,当然我们也可以自定义广播,让监听它的Activity获得广播,然后进行逻辑处理。 Android中的每个应用程序都可以对自己感兴趣的广播进行注册,这样该程序就只会接收到自己所关心的广播内容,这些广播可能是来自于系统的,也可能是来自于其原创 2016-05-15 21:23:05 · 2137 阅读 · 0 评论 -
Android布局中的layout_weight和weightSum属性的详解及使用
由于Android设备的尺寸大小不一,种类繁多,当我们在开发应用的时候就要考虑屏幕的适配型了,尽可能让我们的应用适用于主流机型的尺寸,这样我们的应用不会因为尺寸不同而不美观,解决屏幕适配问题的方法有很多,在这里我所讲的是其中的一种解决方案---巧妙的使用layout_weight属性。 在布局中Layout_weight属性的作用:它是用来分配属于空间的一个属性,你可以设置它所占...原创 2016-03-02 22:53:08 · 23343 阅读 · 3 评论 -
Android程序崩溃异常处理之自动发送邮件
由于自己最近在跟一个项目,怎么说呢,项目功能真的是太多了,有时测试的MM忙不过来,有些隐形的bug没发现出来,但是我认为整体稳定性不够好,有时会Crash掉,这也给那些出去演示的市场部伙伴带来了不少的尴尬,虽然说现在属于测试阶段,但毕竟是上线的项目,用户体验不好,有时直接可能会杀死一个产品,而市场部的伙伴在演示的时候也不知道程序崩溃crash具体的操作流程,因为挂的那么突然 = = !,所以每次演原创 2016-04-17 10:00:41 · 4101 阅读 · 14 评论 -
Android 图片压缩技术
最近开发中有用到图片压缩技术,对此,抽空来写一篇对此的总结,方便后期的查看,如果对文中有什么疑惑,欢迎留言探讨。Ps:最近忙项目真的是身心俱疲,好容易前天状态好一点,眼睛不知道怎么搞的,肿了,导致文章也是一拖再拖,好吧,放假就多写几篇吧,加油!在看接下来的内容之前先了解下基础的图片知识0.图片的基本知识1.文件形式(存储在硬盘上的二进制文件)获取大小(Byte):File.原创 2016-04-30 20:50:04 · 874 阅读 · 0 评论