自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

明华的博客

学无止境。

  • 博客(19)
  • 收藏
  • 关注

原创 获取List中出现次数最多的元素的两种方法

1.使用正则表格式fun getMostElements(list: List<String>): String { var regex: String? var pattern: Pattern var matcher: Matcher var tmp = "" val listString = list.toString() var mostCount = 0 var mos

2021-01-07 22:12:33 4152

原创 Android 自定义带圆角的 Span

当 TextView 中部分文字需要添加背景时,我们一般使用 BackgroundColorSpan 实现,效果如下图:为了美化 UI,有时需要实现带圆角的背景,如下图:这时需要怎么实现呢?首先想到的是查看 BackgroundColorSpan 是否有设置圆角的接口,但不幸的是并没有该接口。接着想到的是是否可以实现一个继承 BackgroundColorSpan 的类,来绘制背景。但查看 BackgroundColorSpan 类,并没有绘制背景的相关回调。package andro

2020-12-08 20:48:19 1173 2

原创 记录android:taskAffinity碰到的坑

taskAffinity 是每个 Activity 都有的属性,可以翻译为任务相关性。这个属性标识了一个 Activity 所需要的任务栈的名字,默认情况下,所有 Activity 所需的任务栈的名字为应用的包名,当 Activity 设置了 taskAffinity 属性,那么这个 Activity 在被创建时就会运行在和 taskAffinity 名字相同的任务栈中,如果没有任务栈还没建立,则...

2020-03-19 12:06:18 1438

原创 Linux之convert命令的使用

Android 开发中经常会碰到包体优化的需求,减小包体首先想到的是删除不需要的图片资源,减小必须图片资源的分辨率。不需要的图片资源的删除可以借用 Lint 实现,而减小图片资源的分辨率可以使用 Linux 下的 convert 命令。常用命令如下:图片格式转换:convert 示例:convert input.jpg output.png,将图像 input.jpg 转换为 outp...

2020-03-04 11:24:36 4210

原创 Android Studio svn:E175012 问题解决

今天使用 Android Studio checkout 工程时出现了Cannot checkout from svn: svn:E175012:Connection timed out 的问题,看到Connection timed out 感觉应该是网络比较差的问题,重试了还是同样的问题,但使用 RabbitVCS SVN 却没有问题,百思不得其解。最后挂上VPN,居然可以了,感觉还是网络的问题...

2019-12-24 17:51:37 1003

原创 Android 通知 PendingIntent 中的 Intent 被覆盖的问题

最近开发中使用到了通知栏,产品需要统计通知栏的的展示和点击。展示比较方便,直接在通知栏 notify() 时进行上传统计即可;点击使用到了Intent 传递参数,然后在 MainActivity 的 onNewIntent() 中读取 Intent,再上传统计即可。public PendingIntent getPendingIntent() { Intent intent ...

2019-12-20 15:50:07 782

原创 Android应用性能优化

前言一个友好的 Android 应用应该具有运行稳定、操作流畅、省电、省流量、包体小等特点,但实际开发中,随着项目的不断迭代,应用逐渐变得卡顿、耗电、耗流量、包体过大,有时甚至出现严重的崩溃。本文将结合实例向大家展示怎么去识别、诊断、解决 Android 应用中常见的性能问题。一、卡顿优化大多数用户感知到的卡顿问题的主要根源是因为渲染性能。Android 系统每隔16ms发出 VSYN...

2019-11-26 12:03:00 331

原创 Android实现模拟点击的一种方法

private void autoClick(View view) { long downTime = SystemClock.uptimeMillis(); final MotionEvent downEvent = MotionEvent.obtain(downTime, downTime, MotionEvent.ACTION...

2019-09-29 19:47:36 898

原创 常见HTTP状态码解析

HTTP状态码是用以表示网页服务HTTP协议响应状态的3位数字代码,所有状态码的第一个数字代表了响应的五种状态之一。一、消息(1××)这类状态码代表请求已被接受,需要继续处理。这类响应是临时响应,只包含状态行和某些可选的响应头信息,并以空行结束。由于 HTTP/1.0 协议中没有定义任何 1xx 状态码,所以除非在某些试验条件下,服务器禁止向客户端发送 1xx 响应。100 :Con...

2019-09-29 17:30:25 774

原创 浅谈 Android 中的 Context

一、Context 简介Google 正式推出 Kotlin 前,主流 Android 应用都是使用 Java 语言来编写的。那么大家有没有思考过,一个 Android 程序和一个Java 程序,他们的区别在哪里?划分界限又是什么呢?其实简单点分析,Android 程序不像 Java 程序一样,随便创建一个类,写个 main() 方法就能运行了,而是要有一个完整的 Android 工程环境。在...

2019-06-10 20:43:47 271

原创 Android生成二维码

1.第三方依赖:ZXingimplementation 'com.google.zxing:core:3.3.0'2.具体实现public class QRCodeUtil { /** * 创建二维码位图 * * @param content 字符串内容 * @param width 位图宽度(单位:px) * @pa...

2019-04-09 20:00:10 1117

原创 Android drawable-nodpi 和 drawable-anydpi 的作用

dpi(每英寸的点数):像素密度是屏幕上单位面积内的像素数。分辨率 DPI数值范围 DPI等级 1dp =?px 240*320 120dpi ldpi 0.75 320*480 120-160dpi mdpi 1 480*800/480*854 160-240dpi hdpi 1.5 720*1280 ...

2019-03-21 22:04:18 5360

原创 android:includeFontPadding 的使用

今天自定义 TextView 样式时,发现字体的上下留了很多空白,严重影响了 UI 效果,百思不得其解。最后通过 Google ,发现了这个 API,设置其值为 false,完美解决了字体上下留白的问题。API解释 :Leave enough room for ascenders and descenders instead of using the font ascen...

2019-03-21 20:05:42 5921

原创 FrameLayout 点击事件穿透解决方案

1.FrameLayout增加属性 android:clickable="true"2.FrameLayout增加触摸事件监听 mFrameLayout.setOnTouchListener(new View.OnTouchListener() { @Override public boolean o...

2019-03-15 20:15:49 6188 1

原创 Android Manifest merger failed:××× 问题解决

今天添加AdMob Mediation功能测试套件时,出现了 Manifest merger failed 的问题,具体错误如下:Manifest merger failed : uses-sdk:minSdkVersion 14 cannot be smaller than version 16 declared in library [com.google.android.ads:med...

2019-03-11 10:57:10 2171

原创 Android Multiple dex files define ××× 问题解决

运行项目时出现错误:Multiple dex files define Landroid/support/design/widget/CoordinatorLayout$DefaultBehavior;问题说明:存在com.android.support:design:×××的多个不同版本;解决方案:1.项目 Module 中存在com.android.support:design:...

2019-03-08 20:50:01 2623

原创 Android 一次性关闭多个Activity

Android开发中,有时需要一次性关闭多个Activity但不退出应用,这时我们可以通过管理一个ArrayList来实现。具体如下:public class ActivityControl { private static final String TAG = "ActivityControl"; private static ActivityControl sInsta...

2019-01-31 15:12:30 2086

原创 Android常用的延时方法

1、Handler的postDelayed方法 new Handler().postDelayed(new Runnable() { @Override public void run() { //do what you want } }, 2000); /...

2019-01-04 22:04:08 400

原创 Android 版本名称、版本号、API等级对应关系

前言 由于Android系统的持续更新迭代,Android 开发中经常需要根据不同的系统版本进行不一样的操作,下表整理了Android版本名称、版本号、API等级之间的对应关系,方便不清楚时查阅。 Code name Version API level Pie 9 API level 28 Oreo 8.1.0 API...

2018-11-11 20:33:26 908

空空如也

空空如也

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

TA关注的人

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