-
androidproject
-
GiftSurfaceView 最初出自于2014年开发HalloStar项目时所写,主要用于HalloStar项目直播间的送礼物动画。现在想来,那夕阳下的奔跑,是我逝去的青春。因高仿全民TV项目时想起,所以抽空整理了下,以此记录。Gif展示引入Maven:<dependency>
<groupId>com.king.view</groupId>
<a
-
android01
-
在前面的几篇文章中我们分析了Activity与Dialog的加载绘制流程,取消绘制流程,相信大家对Android系统的窗口绘制机制有了一个感性的认识了,这篇文章我们将继续分析一下PopupWindow加载绘制流程。在分析PopupWindow之前,我们将首先说一下什么是PopupWindow?理解一个类最好的方式就是看一下这个类的定义,这里我们摘要了一下Android系统中PopupWindow的
-
androidproject
-
Diffadapter 一款针对RecyclerView高效刷新,多类型列表,异步数据更新,崩溃等各种复杂难处理场景的高性能易用的列表库Demodiffadapter.apk图像url,名称,价格都是异步或者通知变化的数据Introduce如何实现一个高效、高性能的、异步数据实时刷新的列表diffadapter就是根据实际项目中各种复杂的列表需求,同时为了解决DiffUtil使用不方便,容易出错而
-
cnbzlj
-
今天,简单讲讲android里如何通过文件的Uri获取文件的路径url。昨天,我讲了如何调用手机的文件管理器获取文件资源,但是文件管理器返回的是文件的Uri,我们需要通过Uri获取文件的url才可以操作文件。昨天的博客虽然写了一种Uri转url的代码,但是我自己也没有很懂,于是在网上查找资料,最终解决了问题。这里记录一下。一.简易版处理(实际并没发现有什么问题)public static Stri
-
kotlin
-
Kotlin非常适合开发Android应用程序,将现代语言的所有优势带入Android平台,而不会引入任何新的限制:兼容性:Kotlin与JDK 6完全兼容,确保Kotlin应用程序可以在较旧的Android设备上运行,没有任何问题。Kotlin工具在Android Studio中完全支持,并与Android构建系统兼容。性能:由于非常类似的字节码结构,Kotlin应用程序运行速度与Java类似。
-
android
-
Butter KnifeAttention: Development on this tool is winding down. Please consider switching toview binding in the coming months.Field and method binding for Android views which uses annotation processi
-
android
-
今天,简单讲讲Android studio编译报错:Failed to resolve: com.android.support:appcompat-v7:28.+的问题。这个问题其实之前遇到过,今天又遇到了。所以记录一下。总的来说,就是Android studio的SDK工具版本低于工程需要的SDK工具版本,SDK Build-Tools与工程所需的不一致。具体讲解如下:具体解决方案:1.既然是
-
kotlin
-
Kotlin非常适合开发服务器端应用程序,允许编写简洁明了的代码,同时保持与现有基于Java的技术堆栈的完全兼容性和平滑的学习曲线:表现力:Kotlin的创新语言功能,如支持类型安全的构建器 和委托属性,可帮助构建功能强大且易于使用的抽象。可扩展性:Kotlin对协同程序的支持有助于构建服务器端应用程序,以适度的硬件要求扩展到大量客户端。互操作性:Kotlin与所有基于Java的框架完全兼容,可以
-
android01
-
首先说点题外话,对于想学android framework源码的同学,其实可以在github中fork一份,具体地址:platform_frameworks_base这里面基本都是android framework层的源码了。而且最近发现了一个比较不错的github插件:OctoTree,它 是一个浏览器插件,它可以让你在Github 看代码时,左边栏会出现一个树状结构,就像我们在IDE 一样。当
-
android00
-
第一步:打开Androidstudio的配置,找到Plugins,在右边搜索ButterKnife ,你就会看到下面这个界面。没有错,这样是搜不到的,因为这个是搜的应该是已经安装的,没有安装的就需要点击Search in repositories,你就会看到你想要的东西了。第二步: 如图选中 Zelezny,点击Install,等安装完成之后,再点击Restart Android Studio重启
-
android00
-
Android 中常常需要对图片进行缩放裁剪等处理,这里简单的介绍一下这两种处理方式的方法1.裁剪/**
* Returns an immutable bitmap from the specified subset of the source
* bitmap. The new bitmap may be the same object as source, or a c
-
androidproject
-
项目地址:https://github.com/wuyr/ArrowDrawable博客详情:https://blog.csdn.net/u011387817/article/details/94607919使用方式:添加依赖:● 单独使用Drawableimplementation'com.wuyr:arrowdrawable:1.0.1'● 作为刷新Header (需配合Sma
-
android01
-
最近有同学问我关于Manifest何时被系统解析的问题,正好也分析到这一块了,索性这一章就讲解一下android系统何时解析Manifest吧,这里的Manifest指的是android安装文件apk中的androidManifest.xml文件是何时被解析的。大家应该都知道,Android系统启动之后,我们就可以在一个应用中打开另一个从未打开过的应用,或者是在一个应用中发送广播,如果另外一个应用
-
cnbzlj
-
android 将图片内容解析成字节数组,将字节数组转换为ImageView可调用的Bitmap对象,图片缩放,把字节数组保存为一个文件,把Bitmap转Byte
import java.io.BufferedOutputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.
-
tinuv
-
distinct操作符从词义可以知道,他是筛选出不同的发射的元素给观察者,很简单如:importio.reactivex.*;
importio.reactivex.functions.Consumer;
importio.reactivex.functions.Function;
importjava.util.ArrayList;
importjava.util.List;
publ
-
android01
-
前面我们讲解了系统截屏按键处理流程,HOME按键处理流程,今天再来讲解一下电源开关机按键事件流程,当然这也是系统按键处理流程方面的最后一篇博客了。和截屏按键、HOME按键的处理流程类似,电源按键由于也是系统级别的按键,所以对其的事件处理逻辑是和截屏按键、HOME按键类似,不在某一个App中,而是在PhoneWindowManager的dispatchUnhandledKey方法中。所以和前面两篇类
-
androidproject
-
Android Animation Detailed Tutorial / Android 动画详尽教程 中文讲解(README)请直接点击对应标题English explanation(or readme), Do not click on the title, please click on the tip address文章开篇总结性文章:《Android 一共有多少种动画?准确告诉你
-
androidproject
-
目录一、本项目的作用二、下载试试三、已经整理完成的章节1、贝塞尔曲线2、PathMeasure3、属性动画4、Xfermode5、VelocityTracker和Scroller6、绘制流程7、svg8-1、canvas_clip8-2、canvas_draw8-3、canvas_text四、继续整理的章节五、作者简介1、个人博客2、联系方式3、赞赏一、本项目的作用本项目主要用于Android高级
-
cnbzlj
-
今天,简单讲讲如何写一个sharedpreferences的工具类。很简单,把一些重复的操作封装在工具类里,其他地方调用就可以。在网上搜索了比较多的资料,找到一个比较好的工具类。import android.content.Context;
import android.content.SharedPreferences;
/**
* 作者:Yzp on 2017-03-20 15:
-
android00
-
Android:SeekBar用法直接上代码:// MainActivity.java
package com.example.administrator.seekbar;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.SeekBar;