
Android
文章平均质量分 72
wazing.
这个作者很懒,什么都没留下…
展开
-
Kotlin 自定义带有边框的TextView - 可定义直角圆角
原文记录到github:Kotlin 自定义带有边框的TextView - 可定义直角圆角class BorderTextView @JvmOverloads constructor( context: Context, attrs: AttributeSet? = null) : AppCompatTextView(context, attrs) { private var strokeWidth: Float // 边框线宽 private var strokeColor:原创 2022-03-28 18:03:22 · 3557 阅读 · 0 评论 -
Android 反编译 apktool+dex2jar+jd-gui
前言ApkTool下载使用dex2jar下载使用jd-gui前言反编译不是让各位开发者去对一个应用破解搞重装什么的,主要目的是为了促进开发者学习,借鉴好的代码,提升自我开发水平。该教程只在mac环境下测试。ApkTool资源文件获取,Google提供的APK编译工具,可以反编译和回编译。一般将apk文件后缀改成zip解压后得到的xml会...原创 2018-04-27 15:27:20 · 904 阅读 · 0 评论 -
如何移除你的Kotlin代码中所有!!
如何移除你的Kotlin代码中所有!!1)使用val而不是var2)使用lateinit3) 使用let函数4)创建全局函数来处理更复杂的案例5)使用Elvis操作符6)按自己的条件崩溃结论原标题:How to remove all !! from your Kotlin code原文地址:https://android.jlelse.eu/how-to-rem...翻译 2018-05-28 15:16:11 · 2079 阅读 · 0 评论 -
Kotlin多层循环跳出
在Java中,使用`break`可以跳出循环,默认情况下是跳出最近一层的循环,假如我们要跳出多层循环怎么办呢,Java替我们已经做好了这一点,就是用 `循环标签 :`即是对某个循环定义一个名字,然后在 `break` 后面加上这个名字,当符合 `break` 条件时,程序就会跳到规定的循环。原创 2019-08-21 09:30:44 · 3269 阅读 · 1 评论 -
Android Studio 获取SHA1值
前言最近在做百度地图的时候,创建应用需要填写应用的安全码,而安全码是由 SHA1;包名 组成;Eclipse中获取SHA1 Window -> Preferences -> Android -> BuildAndroid Studio获取SHA1切换到 .android 目录,输入命令即可,一般来说输入完成后需要填写密码,如果没有设置密码直接En...原创 2018-07-03 22:31:15 · 356 阅读 · 0 评论 -
Android MVP+Dagger2实现
对于一个应用而言我们需要对它抽象出各个层面,而在MVP架构中它将UI界面和数据进行隔离,所以我们的应用也就分为三个层次。View:对于V层也是视图层,在View层中只负责对数据的展示,提供友好的界面与用户进行交互。在Android开发中通常将Activity或者Fragment作为V层。Model:M层负责访问数据。数据可以是远端的Server API,本地数据库或者SharedP...原创 2018-08-21 11:46:49 · 805 阅读 · 0 评论 -
Kotlin SharedPreferences最佳实现
关于概括kotlin中对SharedPreferences的封装关于用于访问和修改返回的首选项数据的接口Context.getSharedPreferences(String, int)。对于任何特定的首选项集,所有客户端共享此类的单个实例。对首选项的修改必须通过SharedPreferences.Editor对象来确保首选项值保持一致状态并在提交存储时进行控制。从各种ge...原创 2018-09-03 16:46:41 · 5058 阅读 · 0 评论 -
OkHttp3/EventBus 实现断点续传/下载
断点续传/下载,在网络情况不好的时候,可以在断开连接以后,仅继续获取部分内容。假如手机在下载文件的时候下载了80%,某些原因断网了,如果不支持范围请求,那就只有被迫重头开始下载。但是如果有范围请求的加持,就只需要下载最后 5% 的资源,避免重新下载。记录 App更新的几个主要功能模块,包含Apk文件下载和断点续传Apk安装,需要兼容 android 7.0Android 8.0 未知权...原创 2019-05-31 23:20:39 · 725 阅读 · 0 评论 -
简介Kotlin let,run,also,apply,with等几种常用的拓展函数
Kotlin的[Standard Library]提供了几种拓展函数(extension function),有的可以更优雅处理可空变量问题。相信在学习 Kotlin 时,一定都会注意到它有许多`let` `apply` `run` 等这些 extension function,它们看起来大同小异,用起来似乎也经常原创 2019-06-19 21:08:33 · 2827 阅读 · 0 评论 -
Android 迁移到AndroidX的实现
今年,谷歌将Android库的支持重新命名为Android Jetpack(又称AndroidX)。原创 2019-10-08 16:03:32 · 540 阅读 · 0 评论 -
使用 Kotlin 进行 Android 开发
Kotlin历史使用 Kotlin 进行 Android 开发语法定义包函数变量注释使用字符串模板使用条件表达式使用可空值及null检测使用类型检测及自动类型转换使用 for 循环使用 when 表达式使用区间range使用集合创建基本类及其实例创建 DTOsKotlinKotlin是一种在Java虚拟机上运行的静态类型编程语言,它也可以...原创 2018-05-11 14:35:41 · 791 阅读 · 0 评论 -
Android 使用Jsoup解析HTML
前言本文主要是讲jsoup爬取网页上的数据用法,具体介绍请看:官方文档官方文档中文版开源地址Github安装as用户可直接依赖implementation org.jsoup:jsoup:1.11.1其他用户请看 https://jsoup.org/download使用下面的html来自干货集中营,就先以这个为例:获取Document对象Document对象可以看成一个一个HTML文档。//原创 2017-11-18 12:14:14 · 1452 阅读 · 0 评论 -
Android WebView滑动隐藏Toolbar
1. 前言在我们浏览一个滑动视图列表的时候会动态的将ActionBar(Toolbar)隐藏(向下滑动显示,向上滑动隐藏),以留下更多的空间来显示内容。内容非常简单,先看看效果图原创 2017-10-12 16:35:34 · 1715 阅读 · 0 评论 -
Android ListView简单使用
import java.util.List;import android.content.Context;import android.view.View;import android.view.ViewGroup;import android.widget.BaseAdapter;public abstract class CommonAdapter extends Bas原创 2016-07-25 15:23:52 · 343 阅读 · 0 评论 -
Android Soap请求webService
使用soap请求webservice,你首先得知道webservice的命名空间(Namespace)、方法名(Methodname)和请求地址(URL)代码很简单,判断一个QQ号是否在线返回数据:String,Y = 在线;N = 离线;E = QQ号码错误;A = 商业用户验证失败;V = 免费用户超过数量// URLfinal String SOAPURL="http://www.webxm原创 2016-08-24 11:13:32 · 778 阅读 · 0 评论 -
Android Listview通用适配器
CommonAdapter是一个非常不错的工具类 相对自己写一个基类继承BaseAdapter,CommonAdapter用起来更简单。public abstract class CommonAdapter <T> extends BaseAdapter { private Context context; private List<T> listData; private原创 2016-08-05 15:53:15 · 803 阅读 · 0 评论 -
Android 常用代码工具类
Blankj大神写的 Android开发人员不得不收集的代码(持续更新中)// ## 图片Url转Bitmap ##public static Bitmap getBitmap(String url) { Bitmap bm = null; try { URL iconUrl = new URL(url); U...原创 2016-09-18 10:24:27 · 516 阅读 · 0 评论 -
Android 请求网络loading 结果显示error empty界面
在进行网络请求中,我们希望给用户一个提示,让用户知道正在加载中(就是一个loading动画)。当加载成功或者失败后,我们又能返回对应的结果给用户,让用户一目了然,知道什么原因,之后又可以进一步处理。 代码很简单,创建一个类继承FrameLayoutimport android.content.Context;import android.util.AttributeSet;i原创 2016-12-19 18:52:08 · 2331 阅读 · 0 评论 -
通俗易懂的dagger2-入门篇
什么是Dagger一个Android和java快速依赖注射器。关于DaggerDagger 2是依赖注入的编译时进化方法。 采用Dagger 1.x开始的方法达成最终结论,Dagger 2.x消除了所有的反射,并通过删除传统的ObjectGraph / Injector来改善代码清晰度,有利于用户指定的@Component接口。这个github项目代表了Dagger 2开发流。 较早的项目页面(Sq原创 2017-09-21 19:46:47 · 556 阅读 · 0 评论 -
Android Material Design 风格的新闻App
一款 Material Design 风格的新闻App,采用 Mvp + RxJava + Retrofit + Dagger2 设计模式,整体风格为 NavigationView + Fragment 开发。原创 2017-10-15 22:10:23 · 897 阅读 · 0 评论 -
通俗易懂的dagger2-实战篇
前言本篇是以 dagger2 在 mvp 中的应用开发为例。如果还有不理解dagger2的,可以先看一下我之前发的通俗易懂的dagger2-入门篇或者先了解一下依赖倒置原则,当然也可以直接开干项目结构先看一下项目结构图:原创 2017-10-30 18:37:46 · 506 阅读 · 0 评论 -
Android 轻松定制属于自己的RecyclerViewAdapter
前言自从RecyclerVIew出来后就尝试着用它,效果真的是比ListView好多了。 但是发现了一个问题,由于RecyclerView的Adapter必须继承自RecyclerView.Adapter,并且指定我们写的ViewHolder为泛型,为了达到万能的效果,我们把需要传入的Java Bean属性直接用一个泛型T指代,我们都在不停的重复写这几个方法①,为何不像之前ListView一原创 2017-10-23 11:37:40 · 2131 阅读 · 0 评论 -
Android SwipeRefreshLayout和RecyclerView 滑动bug
当SwipeRefreshLayout下拉刷新期间,再滑动或者点击RecyclerView,就会造成 java.lang.IndexOutOfBoundsException: Inconsistency detected. Invalid item position 6(offset:6).state:10 很明显数组越界,导致这样的原因是因为在onRefresh()方法中进行了List.cl原创 2016-08-17 12:10:31 · 1363 阅读 · 1 评论