博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
类orAPI
阅读量:6038 次
发布时间:2019-06-20

本文共 3415 字,大约阅读时间需要 11 分钟。

前言 “条条大路通罗马。” 工作中,实现某个需求的方式往往不是唯一的,这些不同实现方式不仅表现在代码质量上,还影响着我们的工作效率。就像,在 Android 系统中,总有那么一些鲜为人知的 API 能够减少我们很多零碎的工作量。于是,就想凭着一些经验,整理一些常用的,找个地方归纳…

想让 App 有丝滑般的切换速度和顺畅的体验么?那就放开 Activity,使用 Fragment 来展示 UI 页面吧

CoordinatorLayout、AppBarLayout、Toolbar、TabLayout

一、简述 Palette,直译为调色板,是v7.graphics包中提供的一个工具类,顾名思义,它可以对一张图片进行色彩分析,开发者可以通过调用Palette提供的方法获取图片中的主题色值等,这为动态获取图片色值的开发需求提供了方便。 二、使用 依赖 compile 'com.…

Android 涂鸦,为图片提供涂鸦操作,支持撤销、旋转、移动、缩放、放大镜及文字等功能。

Android 开发人员不得不收集的代码 (持续更新中)

当嵌入式同事发来一篇讲蓝牙协议的博文时,蓝牙协议分析——BLE 连接有关的技术分析,站在一个 Android 应用程序猿的角度来看,基本上是懵圈的。如果仔细研究一下,再回忆回忆当初大学里面自动化、嵌入式、网络通信协议之类的基础知识,其实还是能看懂一二的。但问题在于,在 android 平台上,这些东西该怎么操作,对于第一次接触 android BLE 的菜鸟来说,这是个伤脑筋的问题。与此同时,嵌入式的大神又丢过来一份我们自己产品的私有蓝牙通信协议,于是事情变得比较紧迫了。

关于播放视频的基本套路,推荐小白或者还在用 VideoView、SurfaceView 播放视频的同学阅读。

本文同步我的 CSDN 博客转载请注明出处 创建并发送一个系统通知 activity_main.xml <?xml version="1.0" encoding="utf…

  1. 通过 RecyclerView 已有的方法 addOnItemTouchListener() 实现
  2. 对 holder.ItemView 添加点击监听
  3. 当 ItemView attach RecyclerView 时实现

Android 涂鸦,为图片提供涂鸦操作,支持撤销、旋转、移动、缩放、放大镜及文字等功能。

Android 从 N 开始不允许以 file:// 的方式通过 Intent 在两个 App 之间分享文件,取而代之的是通过 FileProvider 生成 content://Uri 。如果在 Android N 以上的版本继续使用 file:// 的方式分享文件,则系统会直接抛出异常,导致 App 出现 Crash,当然如果工程的 targetSDK 小于 24,暂时还不会遇到这个问题,一旦升级到 24 及以上,则会立即出现上述问题,所以提早做好预防很有必要,否则等到线上曝出大量的 bug 就很被动了。

当 Toolbar 布局放在底层的 Activity 中, 而 Toolbar 上的菜单需要根据切换的 Fragment 进行切换时。

Java 集合框架部分的源码,面试过程中常问题,LinkedHashMap 在 LRU 算法中使用的比较广泛,所以特地分析一下实现方式,阅读之前最好先看看 HashMap 的实现原理。

新增 4 个功能:

  1. 分段视频拍摄, 多段视频合成, 并且可以删除视频段落;
  2. 改变视频速度 (加速或者减速);
  3. 仿微信裁剪图片控件, 自定义 View 实现功能;
  4. 裁剪视频宽高;

上一节讲了asynctask的官方文档,这一节深入讲解如何深入使用AsyncTask。 asynctask本质上也是线程启动,只是它封装了一些内容,可以运行在后台,同时可以和UI线程交互。asynctask最少要启动2个线程,最多四个。 AsyncTask的状态 AsyncTa…

ENUM 中的每一个值都是一个 Object,它的每个声明都会占用运行时的部分内存以便能够引用到这个 Object。因此 ENUM 的值会比对应的 Integer 和 String 所占用的内存多。在 Android 之前的版本中 (<=2.2),存在着关于 ENUM 引起的性能问题,这个问题在 JIT 编译器中解决了。

添加一个 ENUM 将会增大最终的 DEX 文件(Integer 常量的 13 倍大)。并且会引起运行时的过度开销,你的应用也会占用更多的空间。

解决办法

Android 提供了注解库,其中有 TypeDef 注解。这些注解能够确保一个特定的参数,返回值或者字段能够在特别一组常量中引用一个。它们能确保自动完成允许的常量中选择一个。

前言 RecyclerView在 Android开发中非常常用,如果能结合ItemDecoration类使用,那么将大大提高RecyclerView的表现效果 本文全面解析了ItemDecoration类,包括ItemDecoration类简介、使用方法 & 实例讲解,希望你们…

版权声明: 本账号发布文章均来自公众号,承香墨影(cxmyDev),版权归承香墨影所有。 每周会统一更新到掘金,如果喜欢,可关注公众号获取最新文章。 未经允许,不得转载。 一、前言 Glide 现在大范围的使用在各种商业项目中,而对于一般而言, Glide 的 Api 封装的非…

ToolBar 的定制性

OpenGL ES 总结(三)OpenGL 通过计算纹理坐标来显示一张图片

有关于Activity作为dialog全屏显示,沉浸式状态栏及屏幕亮度问题的一次总结 需求: 1.弹出一个全屏显示的Dialog,里面做了好多的逻辑处理,比如抢红包,请求接口,比如动画效果。 2.通过某一事件改变当前布局的背景颜色 效果图: Markdown 分析: 如果碰到布局…

相信有很多朋友都有过在 Activity 中通过 getWidth() 之类的方法获取 View 的宽高值,可能在 onCreate() 生命周期方法中,也可能在 onResume() 生命周期方法中。然而,不幸的是,并不能获取所要的结果,宽高值均为 0。 如果对 View 的…

今天和大家分享一个从 Android 系统源代码提取出来的汉字转成拼音实现方案,只要一个类,560 多行代码就可以让你轻松实现汉字转成拼音的功能,且无需其他任何第三方依赖。

Android Palette 简单使用

Android 相机开发那些坑

GestureDetector 的基本使用

Hybrid App(混合式开发)已经是每一个商业应用都会使用的开发手段。其最大的优势就是将一些可动态更新的内容页面使用 H5 开发,然后借用移动端原生系统提供的 WebView 控件加载进来。这种方式不仅能够节约安卓和 iOS 两个客户端的开发人力成本,还能在避免应用版本迭代的…

鉴于项目需要,封装了一个录音和播放的管理类,分享出来给大家,有需要的直接拿去用! 有图有真相: 实现功能: 实现录音功能,提供暂停、继续切换,并且监听音量大小以波浪线呈现出现 实现播放功能,播放实现帧动画 用法1.录音 VoiceManage mVoiceManage =Voi…

随着 Android 版本的不断更新,更多好的控件也随之产生了,比如 CardView 、RecyclerView 等。其中 RecyclerView 因为它的高度耦合性以及灵活的扩展使用而广受开发者的喜爱,在这里就详细介绍下 RecyclerView 的属性和用法,一起来体验艺术般的控件。

获取手机验证码,广告轮播,倒计时功能总结

教你如何在适配 Android7.0 通过 Intent 跳转到 APK 安装页

该 LogUtils 工具类 450 行代码,大小不足 16K,功能齐全。

我看网上对于PopupWindow的介绍非常的少就自己写一篇, 本文基本上分析了PopupWindow的所有方法. PopupWindow是对于屏幕添加一个显示区域, 由于对位置和内容都非常自由所以常常在开发中用到. 一般用的构造方法. 通过上下文创建PopupWindow, …

你可能感兴趣的文章
我的友情链接
查看>>
Java break continue return 的区别
查看>>
算法(Algorithms)第4版 练习 1.3.4
查看>>
jquery easyUI checkbox复选项获取并传后台
查看>>
浅析NopCommerce的多语言方案
查看>>
设计模式之简单工厂模式
查看>>
C++中变量的持续性、链接性和作用域详解
查看>>
2017 4月5日上午
查看>>
Google Chrome开发者工具
查看>>
第一阶段冲刺报告(一)
查看>>
使用crontab调度任务
查看>>
【转载】SQL经验小记
查看>>
zookeeper集群搭建 docker+zk集群搭建
查看>>
Vue2.5笔记:Vue的实例与生命周期
查看>>
论JVM爆炸的几种姿势及自救方法
查看>>
联合体、结构体简析
查看>>
使用throw让服务器端与客户端进行数据交互[Java]
查看>>
java反射与代理
查看>>
深度分析Java的ClassLoader机制(源码级别)
查看>>
微服务架构选Java还是选Go - 多用户负载测试
查看>>