自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 android自定义圆环进度条(带渐变效果)

/** * @description 圆环进度条: */public class UmeRingProgressView extends View { private Paint innerPaint; private Paint outerPaint; private Paint smallCirclePaint; private Paint leftProgressSmallCirclePaint;//左边进度小圆 private Paint right.

2021-05-13 20:17:42 622

原创 android 吸顶效果的RecyclerView

/** * @description 吸顶效果的view */public class CeilingRecyclerView<T extends View> extends FrameLayout { private RecyclerView carTypeRv; private FrameLayout flHeader; private CellingListener<T> cellingListener; private T head..

2021-05-13 20:05:51 169

原创 Android仿高德卷帘门效果的View

/** * @description 卷帘门效果的View */public class RollerShutterDoorView extends AppCompatImageView { private boolean roller; public RollerShutterDoorView(@NonNull Context context) { super(context); init(); } public RollerS.

2021-05-13 19:51:01 241

原创 Kotlin语言特点总结 (2)

Kotlin语言特点总结 (2)一、Kotlin 扩展 1.Kotlin 可以对一个类的属性和方法进行扩展,且不需要继承或使用 Decorator 模式。扩展是一种静态行为,对被扩展的类代码本身不会造成任何影响。 class User(var name:String) /**扩展函数**/ fun User.Print(){ print("用户名 $name") } 2.扩展函数是静态解析的 扩展函数是静态解析的,并不是接收者类型的虚拟成员,在调用扩展函数时,具体被调

2020-12-17 14:18:23 224

原创 Kotlin语言特点总结 (1)

Kotlin语言特点总结一、基础语法:①//表达式作为函数体,返回类型自动推断:fun sum(a: Int, b: Int) = a + b // public 方法则必须明确写出返回类型: public fun sum(a: Int, b: Int): Int = a + b ②//无返回值的函数(类似Java中的void):fun printSum(a: Int, b: Int): Unit { print(a + b) } // 如果是返回 Unit类型,

2020-12-07 16:05:54 309 1

原创 安卓卡顿优化

一.卡顿及卡顿衡量标准:1.卡顿:卡顿是人的一种视觉感受,比如滑动界面时,如果滑动不流畅就有卡顿额感觉;2.衡量标准:FPS(帧率),每秒显示帧数,(Frames per Second),表示处理器每秒钟能更新的次数,高的帧率可以得到更流畅、更逼真的动画,一般来说,12fps大概类似于手动快速翻书的帧率,这明显感觉不够顺滑;30fps相对还可以接受,但是无法顺畅表现绚丽的画面内容;60fp...

2020-02-03 14:59:37 340

原创 一张图搞定安卓事件分发机制

2018-02-24 10:02:50 189

原创 Android动态换桌面icon

一.需求: 快过年了,产品经理给出这样一个需求:升级一个版本,把桌面icon改为新年主题的,年后再升级一个版本,改为默认的icon,我心里想,就为了一个icon,要升级两个版本,这也太low币了吧,于是,就想如何动态的实现这个功能。二.思路: 安卓程序可以有多个入口,也就是,一个程序可以有多个icon图标点击进入程序。我们可以根据需求需要哪个icon,就让该入口可以使用,让其他入口

2018-02-05 15:30:25 554

原创 mac中android studio使用svn版本控制遇到的坑及问题解决

1.mac中可视化svn工具:推荐使用CornerStone;2.使用CornerStone登录并建相应的目录;3.项目与svn关联: ①android studio打开要关联的项目,如果该项目之前关联过如git版本控制,则需要先解除关联; 1>解除关联:点击Android Studio->Preferences->Version Control选中关联的版本控制,点击减号

2018-02-02 20:06:07 848

原创 安卓热修复

介绍:AndFix,是阿里开源的一个Android热修复框架,允许APP在不重新发布版本的情况下修复线上的bug。(仅限于修改类中的方法)以下是各平台的热修复框架对比:![对比图:](http://img.blog.youkuaiyun.com/20171207171725838?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMzQyNTI5NzA=/fon

2017-12-07 17:19:23 275

原创 对Fragment加载的理解

对Fragment加载的理解1.FragmentPagerAdapter和FragmentStatePagerAdapter的区别:ViewPager默认机制为:预加载当前页及前后两页内容,切换时,会缓存该页及前后两页内容,同时销毁之外的其他Fragment;如果使用的是FragmentPagerAdapter则不会执行onDestroy()方法,而会执行onDestroyView()

2017-11-24 11:16:07 361

原创 安卓如何优雅的加载图片问题探究

图片加载分为:加载网络图片,加载资源文件中的图片和加载本地图片等。1.加载网路图片:假设UI设计时,以2560*1440分辨率作为基准,切图,字体大小等都是在这个基准上去做的,后台上传的图片也是如此。此时,要加载后台的一张全屏的图片(2560*1440),本文中使用Glide加载,如果不加任何处理,那么不管在什么屏幕上,加载的都是原图,如解码格式为:PREFER_ARGB_8888,存储一...

2017-10-24 18:30:20 677

原创 android加载超大图片

需求:有一张图片:清明上河图,尺寸为:19920*720;将该图片放置在mipmap目录下;要将该图片显示在ImageView上,避免发生OOM;实现步骤:1.分析:一张分辨率为19920*720,解码格式为ARGB_888的图片占用的内存大小为:19920*720*8/1024/1024(MB),大概为100多MB,加载如此一张图片占用的内存过大,极易造成OOM;2.实现:

2017-09-17 14:06:16 1189

原创 实现多渠道打包并根据渠道不同而依赖于不同的Maven项目

一、需求分析:有三个渠道,分别为华为,小米,豌豆荚,要求三个渠道打包生成的apk项目,启动MainActivity后,点击按钮,打开同一个名称的Activity,页面分别显示为,华为,小米,豌豆荚。二、多渠道打包:在app的build gradle的android{}中添加以下配置:其中flavorDimensions后面的名称可以自己设置;flavorDimensions "

2017-09-01 14:10:25 1626

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除