Android进阶
文章平均质量分 84
宿罪
人没有梦想和咸鱼有什么区别,有梦就要去追,不为失败找借口,只为成功找方法。
展开
-
OkDownloader,基于 OkHttp的现代化开源下载框架
OkDownloader是一款基于 OkHttp 编写的适用于Kotlin/Java/Android平台的开源下载框架,可以运行在任何JVM 机器上原创 2023-08-01 08:30:00 · 428 阅读 · 0 评论 -
Compose自定义条形进度条
Compose自定义View其实比View系统更方便简单,比如接下来本文要介绍的就是使用Compose实现View系统中常见的条形进度条。原创 2022-06-21 23:24:20 · 942 阅读 · 1 评论 -
Android性能优化之布局优化
在开始性能优化前我们先需要知道从哪些方面入手,本篇文章介绍的布局优化可以从如下几个方向入手减少布局树的层级减少布局树中View的数量减少单个View的绘制时间(将在下一篇文章中归到绘制优化部分)提高布局的复用性减少布局树的层级我们知道在Android中View布局是一个树的数据结构,这个树里面的元素是我们编写或定义的View或ViewGroup,而每个ViewGroup元素又可以有View或ViewGroup子元素,这样ViewGroup嵌套子View,子ViewGroup又嵌套子View形原创 2020-09-20 23:49:09 · 722 阅读 · 0 评论 -
Android自动填充短信验证码
前言 短信验证码获取并自动填写现在已经成为一个人性化App的标配了,这篇文章将实现一个短信验证码获取并自动填写的demo。其实就是读取指定号码的短信并提取出验证码,然后赋值给EditText显示。demo效果图:读取短信 Android系统在接受到一条短信的时候会发出一条Action为android.provider.Telephony.SMS_RECEIVED的有序广播,因此我们读取短信的验证码只原创 2017-09-28 15:28:23 · 5088 阅读 · 1 评论 -
Android自定义ViewPager图片指示器,兼容实现底部横线指示器
前言 记得以前自己使用过的ViewPager Indicator有JakeWharton大神的开源库ViewPagerIndicator,v4包自带的PagerTitleStrip以及Android Support Design库的TabLayout。它们基本上可以实现项目中常见的ViewPager指示器的需求,除非你的项目有特色的指示器需求,如指示器不再是tab底部横线,而是一个三角形或是其...原创 2018-04-22 16:05:40 · 4277 阅读 · 1 评论 -
Android自定义RecyclerView分割线,打造无边缘分割线
前言: 现在的RecyclerView几乎已经完全取代ListView和GridView了,已经几年没使用ListView和GridView了,想当年还需要自己在getView方法中复用convertView。而现在的RecyclerView一出生就被设计成convertView复用的,尽管你不想复用(才怪)。RecyclerView功能如此强大的同时就会面临许多需求,如给RecyclerVi...原创 2018-05-02 22:01:58 · 4012 阅读 · 1 评论 -
Android自定义Dialog,炫酷主流的加载对话框
前言 最近开发中用到许多对话框,之前都是在外面的代码中创建AlertDialog并设置自定义布局实现常见的对话框,诸如更新提示等含有取消和删除两个按钮的对话框我们可以通过代码创建一个AlertDialog并通过它暴露的一系列方法设置我们自定义的布局和style,但有时候系统的AlertDialog并不能实现更好的定制,这时,我们就想到了自定义Dialog。通过查看AlertDialog的类结构...原创 2018-05-12 11:59:14 · 5404 阅读 · 1 评论 -
Android自定义PopupWindow,高仿炫酷的IOS对话框
前言: 最近在使用IOS系统的过程中发现IOS底部弹出框甚是漂亮,大气,上档次,于是乎就想啊能不能在Android中实现类似的对话框呢?你说,这不是废话吗,除了一些极少数的系统级的不能模仿外(版权)还有啥不能依瓢画葫芦的呢,所以啊,这篇文章将介绍如何在Android中实现高仿IOS对话框效果,先上图,给大家养养眼:大家在看到上面的对话框时有没有想到简单的实现思路呢?我这里给出的思路是我...原创 2018-05-12 20:39:59 · 1459 阅读 · 0 评论 -
Android自定义圆角矩形ImageView,支持Glide加载图片及颜色填充
前言: 之前用到圆角的情况大都是自定义一个shape背景drawable及用到v7包下的CardView包裹View实现圆角矩形效果,还有就是在用户圆形头像的时候需要使用到圆角矩形(圆形可以看做是特殊的圆角矩形),诸如Button,Editext,TextView的圆角矩形颜色背景可以用shape实现,但是ImageView Res圆角还没用到过,它就不能简单地设置一个圆角矩形shape作为背...原创 2018-05-14 11:43:40 · 5701 阅读 · 1 评论 -
Gradle私服上传自己的库项目
nexus私服(3.14)下载地址:https://www.sonatype.com/download-oss-sonatype安装:管理员身份运行cmd,进入nexus bin目录,nexus /install nexusnexus /run(之前版本用bat启动,nexus start启动)修改配置(etc目录nexus-default.properties)如:修...原创 2018-12-22 22:36:22 · 2164 阅读 · 0 评论 -
Android开发技巧之使用自定义注解
前言 一些优秀的开源框架如比较早的xUtils网络加载框架及现在最新版本的greenDao 3.X ORM框架支持注解,注解的使用可以使得我们的代码架构变得更加清晰,同时也更能体现出面向对象语言的继承的特征及反射机制的强大。我们在Android开发过程中可以使用注解来优化我们的代码结构。Java注解简介注解Annotation其实是一种元数据,不包含业务逻辑,它的作用是用来给类,接口,域等提供数据。原创 2017-09-28 10:17:11 · 1294 阅读 · 0 评论 -
Android开源框架greenDAO 3.X的使用
前言 greenDAO是greenrobot Open Source Libraries的一个开源框架,同时greenrobot Open Source Libraries还有一个优秀的开源框架EventBus。greenDAO是用来替代Android原始的SQLite数据库操作以便节约开发者开发成本的一款优秀的ORM(object/relational mapping)框架,将SQLite数据库的原创 2017-08-19 05:40:08 · 1108 阅读 · 0 评论 -
Material Design (二),TextInputLayout的使用
前言 一般登录注册界面都需要EditText这个控件来让用户输入信息,同时我们一般会设置一个标签(使用TextView)和EditText的hint属性来提示用户输入的内容,而设计库中高级组件TextInputLayout则专门为EditText设计的,即通过使用TextInputLayout包裹EditText实现当用户开始输入时hint属性值将显示在EditText上面作为一个提示标签,这个过程原创 2016-03-16 20:11:08 · 3035 阅读 · 0 评论 -
Material Design (三),Snackbar的使用
前言: 另一个比较有趣的设计库中的UI组件是Snackbar,它的作用和Toast类似,也是显示吐司一样,但Snackbar的特别之处在于Snackbar显示的提示信息可以和用户交互,更好地获取用户反馈信息。同时,它显示的吐司带有动画效果,从屏幕下方慢慢展开显示。引用设计库中的组件,需要引入相应的包:dependencies { compile fileTree(dir: 'libs', i原创 2016-03-17 13:46:57 · 2409 阅读 · 0 评论 -
Material Design (四),AppBarLayout的使用
前言 AppBarLayout,顾名知意,就是用来给AppBar布局的容器,是LinearLayout的子类。而AppBar就是我们通常所知道的ActionBar,Toolbar。AppBarLayout要点:功能:让子View(AppBar)可以选择他们自己的滚动行为。注意:需要依赖CoordinatorLayout作为父容器,同时也要求一个具有可以独立滚动的兄弟节点(或兄弟节点原创 2016-03-19 21:44:47 · 7380 阅读 · 2 评论 -
Android反编译,修改apk启动页
前言 不得不说自从有了IDE之后,很多原本很基本的开发命令开发步骤似乎被人们慢慢淡忘了,特别是Android开发,先是eclipse+adt作为Android开发的IDE,到现在的Android Studio2.3.3的功能可谓是如此得强大,编译速度越来越快。然而很多基础的东西却被这强大的IDE悄悄地替我们完成了,比如apk的编译,打包,签名设计,而开发者需要做的仅仅是在GUI界面点击编译,打包按钮原创 2017-08-14 19:18:49 · 11407 阅读 · 1 评论 -
Android 5.X Toolbar+DrawerLayout实现抽屉菜单
前言 android5.X新增的一个控件Toolbar,这个控件比ActionBar更加自由,可控,由于以前的ActionBar的灵活性比较差,所以google逐渐使用Toolbar替代ActionBar,所以Toolbar也叫作超级ActionBar,是ActionBar的加强版。这篇文章不详细介绍ToolBar的使用(定制),主要是介绍Toolbar使用的一个例子,即Toolbar结合Drawe原创 2016-03-17 19:16:13 · 3748 阅读 · 2 评论 -
Android使用AIDL实现跨进程通讯(IPC)
前言:在还没有做任何一件事情之前,千万不要觉得这件事情很难,因为还没有开始做内心就已经对这件事情产生了恐惧,这将会阻止你的进步,也许当你动手开始做了这件事后发现其实并不是很难。一、 AIDL概述含义:AIDL(Android Interface Definition Language),是android接口定义语言,这种语言定义了一个客户端和服务器通讯接口的一个标准、规范。为什么要有AIDL? 我们原创 2016-03-08 21:45:58 · 8538 阅读 · 2 评论 -
Android自定义view(一),打造绚丽的验证码
前言:我相信信念的力量,信念可以支撑起一个人,一个名族,一个国家。正如“人没有梦想和咸鱼有什么区别”一样,我有信念,有理想,所以我正在努力想梦想前进~。自定义view,如果是我,我首先要看到自定义view的效果图,然后再想想怎么实现这种效果或功能,所以先贴上自定义验证码控件的效果图:怎么样,这种验证码是不是很常见呢,下面我们就自己动手实现这种效果,自己动手,丰衣足食,哈哈~一、 自定义view的步骤原创 2016-03-03 13:34:58 · 3473 阅读 · 1 评论 -
Android自定义view(二),组合控件Titlebar的定制
前言:我相信”天生我才必有用”这句话,每个人都有他的作用,也许他的作用相对其他人来不是很明显,也许他的作用也就是取悦别人,但是请不要忘记,可以通过不断努力来发挥自己的作用,使自己的价值得到提升。在平时的android开发中你是否遇到一个问题,那就是每次都要自己写一个布局,或者是引入一个布局但每次都要为了给布局中的控件初始化。对于这个问题,谷歌官方推出了ActionBar,以及随后的取代ActionB原创 2016-03-05 10:19:45 · 6213 阅读 · 1 评论 -
Android自定义view(三),简易的数值输入器
前言:前几天看到了迅雷app上有个一元夺宝,那时无聊就参加了几次,到后来中奖结果出来了,哎,根本就没我的份啊(意料之中),还好投的钱不多,就一块两块,哈哈。不过,我看到了那里有个数值输入的效果,我当时想了想这个实现挺简单了,应该有很多种方式,于是做了个决定,如果没中奖,我就把那个数值输入器做出来以惩罚自己(开玩笑~),现在,该是兑现自己承诺的时候了。先看看我们即将要实现的效果图:大家看到这个效果,要原创 2016-03-12 15:41:08 · 3152 阅读 · 5 评论 -
Material Design (一),NavigationView+DrawerLayout轻松实现侧拉菜单
前言 Material Design是Google在2014年的I/O大会上推出的全新设计语言。Material Design是基于Android 5.0(API level 21)的,兼容5.0以下的设备时需要使用版本号v21.0.0以上的support v7包中的appcpmpat,不过遗憾的是support包只支持Material Design的部分特性。使用eclipse或Android S原创 2016-03-16 17:08:31 · 3282 阅读 · 0 评论