自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Android自定义View之不得不知道的文件attrs

那么,那个boolean的值是用来干嘛的呢:控制图片是否显示–> miv.setVisibility(b?(拓展:了解一下VISIBLE :,GONE,INVISIBLE);其中:为了使title相当于TextView中的text:mtv.setText(),将获取的值放入就行了。其中demo_style如下:一般都是放的.9图片,为了方便就放个颜色了。好了现在已经完成了这两个功能了,现在来提一下,点击更换图片。最后当然是要将自定义的属性实现其功能了(回到第一步中)这两句就是取得你在运用中输入的东西了。

2024-05-27 02:58:26 314

原创 Android自定义ViewGroup嵌套与交互实战,幕布全屏滚动效果_幕布全屏滚动容器

我们先前都是使用的成员变量来控制一些间距与逻辑的触发,这就跟业务耦合了,如果想做到通用的一个效果,肯定还是要抽取自定义属性,做到对应的配置开关,就可以适应更多的场景使用,也是开源项目的必备技能。enableScale 是否支持缩放maxScale 缩放的最大比例minScale 缩放的最小比例moveInViewport 是否只能在布局内部移动horizontalSpacing item的水平间距verticalSpacing item的垂直间距。

2024-05-27 02:57:55 361

原创 Android版仿微信朋友圈图片拖拽返回效果

4.设置需要进行拖拽的View/ViewGroup,以及背景ViewGroup(必须要设置背景色)5.设置监听@Override//默认false 不拦截。比如图片在放大状态,是不需要执行拖拽动画的等等。@Override//拖拽开始。可以在此额外处理一些逻辑@Override//拖拽中。percent当前的进度,取值0-1,可以在此额外处理一些逻辑@Override//拖拽取消,会自动复原。可以在此额外处理一些逻辑@Override。

2024-05-27 02:42:54 332

原创 Android热更新(Tinker)

4.热更新唯一的不方便我感觉就是集成assembleRelease或者assembleDebug是,如果想在build下clean Project的话,在项目的app中的build中生成apk会被clean掉,所以热更新时不要clean项目,否则就需要重新生成。3.热更新集成相对还是容易的。有几个细节注意下即可,热更新提交补丁后也会有延迟,不是实时生效的,亲测会有5分钟的延迟,但是补丁确实挺好用,对后期bug的更改大有好处。3.1-baseAokDir是生成base-apk后填写的名称,一般是生成的日期。

2024-05-27 02:42:23 303

原创 Android快速开发整理(库、插件、常用网站)

光标放在布局文件ID上(如R.layut.activity_main),Ctrl+Shift+B。官网:http://ybq.github.io/Android-SpinKit/官网:http://square.github.io/okhttp/对Activity或者fragment的生命周期方法进行先后排序。快速将json字符串转换成一个Java Bean。配合ButterKnife快速生成注解。

2024-05-27 02:27:29 1327

原创 Android快速入门-----数据存储(二)SQLite数据库存储(增删改查)事务处理

下面举例。

2024-05-27 02:26:59 294

原创 Android开发一年半,二本学历,Curd背景,竟给30K,我的爱奇艺,华为Offer终于来了

这1年多的Crud经历,让我明白自己真的算是菜鸡中的战斗机,也正因为Crud,导致自己技术比较零散,也不够深入不够系统,所以重新进行学习是很有必要的。我差的是系统知识,差的结构框架和思路,所以通过视频来学习,效果更好,也更全面。关于视频学习,个人可以推荐去B站进行学习,B站上有很多学习视频,唯一的缺点就是免费的容易过时。“编程语言是程序员的表达的方式,而架构是程序员对世界的认知”。所以,程序员要想快速认知并学习架构,读源码是必不可少的。“编程语言是程序员的表达的方式,而架构是程序员对世界的认知”。

2024-05-27 02:11:23 349

原创 Android开发5年年薪30w+,在今年特殊时期被辞退,沉寂3个月入驻字节跳动!

在经历3个月的沉寂后,我终于拿到了字节跳动的Offer,说的时候是年薪45w+14薪,所以说有时候是福是祸要自己走了之后才知道,要是没有被优化,我可能也就想着干到自己老吧!6、热爱移动产品研发,有较强的学习能力,有强烈的求知欲、好奇心和进取心 ,能及时关注和学习业界最新的移动开发技术。我以前也常说,年轻人,应该多吃吃苦,尽自己最大能力去努力,去拼搏,这样以后大概率才能过上自己想要的生活。3、熟练掌握Java语言,有Kotlin经验者优先,有iOS或前端开发经验者优先,有跨平台开发经验者优先。

2024-05-27 02:10:52 260

原创 Android基于MediaBroswerService的App实现概述

客户端通过调用sendCustomAction,根据与服务端的协商,制定相应的action类型,进行数据的传递交互。@Override@Override@Override});服务端实现onCustomAction,根据action类型返回相应的数据@Override//分支判断//填充数据。

2024-05-27 00:36:46 950

原创 Android图表年度最强总结,一篇文章从入门到精通!_android 图表

是GitHub一个名叫Philipp的大神所写,可又绘制各种图表的一个库。在现在大数据即将来临的时代,用图表来展示数据,更直观易懂。并且很多行业(比如股票、医疗等等…)都需要图表来支撑。所以,画图对我们程序员来说也是一门必要的技术。

2024-05-27 00:36:15 322

原创 Android井喷期已过,无数次面试坑下的回忆历历在目,深陷泥潭的开发者如何通过技能自保?_android井喷期已过,无数次面试坑下的回忆历历在目,深陷泥潭的开

Android中也有数据库,虽然用得不多,但作为Android开发还是要对数据库有所了解。比如索引的作用,MySQL的存储引擎,这是面后台岗问到的一个问题,这一块儿遇到的问题不多,所以没啥记录。Android开发对数据结构和算法要求并不高,并不需要你去掌握红黑树、以及各种图,但最基本的数据结构和算法还是需要掌握的。基本就这些内容,也比较简单,面试前好好准备应该问题不大。知识点还是集中在Java虚拟机方面,并发编程也会问到,所以多读几遍Java虚拟机和并发编程这两本书,掌握Java的基本语法应该没啥问题。

2024-05-27 00:21:52 408

原创 Android事件分发机制四:学了事件分发有什么用?

实时触摸反馈问题:如设计一个按钮,要让他按下的时候缩小降低高度,放开的时候恢复到原来的大小和高度,而且如果在一个可滑动的容器中,按下之后滑动不会触发点击事件而是把事件交给外层可滑动容器。按钮块本身有高度、有圆角,我们可以考虑继承cardView来实现,重写cardView的dispatchTouchEvent方法,在按下的时候,也就是接收到down事件的时候缩小,在接收到up和cancel事件的时候恢复。滑动冲突的解决需要结合具体的实现需求,而不是一套解决方案可以解决一切的滑动冲突问题,这不现实。

2024-05-27 00:21:22 241

原创 Android-Q-对-startActivity()-做了限制,怎么适配?

就这样吧,Android Q 要来了,后续还会更新一些适配改动的细节,有任何问题欢迎加下面的技术交流群一起讨论~如果你看到了这里,觉得文章写得不错就给个赞呗?如果你觉得那里值得改进的,请给我留言。一定会认真查询,修正不足。题欢迎加下面的技术交流群一起讨论~如果你看到了这里,觉得文章写得不错就给个赞呗?如果你觉得那里值得改进的,请给我留言。一定会认真查询,修正不足。[外链图片转存中…(img-NJxZP3TJ-1716739419097)]

2024-05-27 00:03:50 1231

原创 Android 打开网页之CustomTabs

今天主要说说CustomTabs。

2024-05-26 23:40:05 234

原创 Android 手势锁的实现 让自己的应用更加安全吧

***/enum Mode/***//***//***//***//***//***//***//**内圆的半径 = mInnerCircleRadiusRate * mRadus*//***/@Override// 取长和宽中的小值// 绘制三角形,初始时是个默认箭头朝上的一个等腰三角形,用户绘制结束后,根据由两个GestureLockView决定需要旋转多少度@Override。

2024-05-26 23:39:35 361

原创 Android 代码优化:“这个需求很简单,怎么实现我不管”

这么下来,我们先请求接口APi1,如果成功了弹广告弹框A,弹框结束了调用注册协议的方法,如果APi1 请求失败,直接跳过广告弹框A,继而请求注册协议,当注册协议请求成功了弹出我们的注册协议弹框,这么下来,我们确实可以保证注册协议弹框在广告弹框之后~1.首页次序之间强耦合,每次一旦要在二者之前插入一个其他弹框或者页面,我们每次都要修改在它之前和之后的调用链,至少要修改三处,很容易漏掉,但是实际上它们彼此之间除了次序之外,没有其他关联.2.后来维护者,很清晰的就能知道调用的次序,无需每次重新梳理整个业务代码.

2024-05-26 23:25:16 365

原创 Android 从零开始打造一个 3D立体旋转容器

原因在于:容器拿到滑动事件只需要做滑动操作,而子类则不同,它有点击事件需要判断,一个容器有很多子类,而很多子类只有一个共同的容器,如果把控制权交给容器,那么容器怎么可能能够判断得出不同的子类到底需不需要这个滑动事件呢?//我当时写的时候就被这个坑了,后来通过log判断,原来是computeScroll中的onlayout,和子Child的draw触发的顺序导致的。在isContain中,我做的是点击的坐标是否在Edittext中,在则拦截,子类处理,不在,则交给父类容器。

2024-05-26 23:24:45 282

原创 Android Room+RxJava实现数据添加和查询(二)

Room 官方文档介绍的功能点:使用 Room 实体定义数据、定义对象之间的关系、在数据库中创建视图、在数据库中创建视图、预填充数据库、迁移数据库、测试和调试数据库、引用复杂数据等。2020年已经过去10多天了,过年的气氛也越来越浓了,最近工作似乎不是以前那么忙碌了,大家都忙着回家了。2、创建Dao,@Dao注解支持增删改查,@Query注解表示查询,@Insert注解表示插入,二、创建项目结构:模型层(model)、控制层(presenter)、视图层(view)

2024-05-26 23:09:49 411

原创 Android RecyclerView 使用完全解析 体验艺术般的控件

/设置布局管理器//设置adapter//设置Item增加、移除动画//添加分割线ok,相比较于ListView的代码,ListView可能只需要去设置一个adapter就能正常使用了。而RecyclerView基本需要上面一系列的步骤,那么为什么会添加这么多的步骤呢?那么就必须解释下RecyclerView的这个名字了,从它类名上看,RecyclerView代表的意义是,我只管Recycler View,也就是说RecyclerView只管回收与复用View,其他的你可以自己去设置。

2024-05-26 23:09:18 254

原创 Android Drawable 那些不为人知的高效用法(1)

一般情况下,除了直接使用放在Drawable下的图片,其实的Drawable的用法都和xml相关,我们可以使用shape、layer-list等标签绘制一些背景,还可以通过selector标签定义View的状态的效果等。关于自定义Drawable,可以通过写一个类,然后继承自Drawable , 类似于自定义View,当然了自定义Drawable的核心方法只有一个,那就是draw。那么自定义Drawable到底有什么实际的作用呢?可以看到,如果是已读的邮件,我们的图标是打开状态,且有个淡红色的背景。

2024-05-26 22:54:25 229

原创 Android DataBinding 从入门到进阶,看这一篇就够

variable如果存在的类名相同的情况,可以使用指定别名

2024-05-26 22:53:54 349

原创 @Android程序员:这-5-道刁钻的线程相关题,你会几道?

线程相关的知识很重要,这也是面试常问的原因。最后在这里我也分享一份大佬自己收录整理的**Android学习PDF+架构视频+面试文档+源码笔记**,还有高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料这些都是我闲暇还会反复翻阅并给下属员工学习的精品资料。在脑图中,每个知识点专题都配有相对应的实战项目,可以有效的帮助大家掌握知识点。总之也是在这里帮助大家学习提升进阶,也节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习最近面试被怼了?缺面试题刷提升自己吗?

2024-05-26 22:36:57 377

原创 @Android程序员:不是安卓不行了,是你跟不上了

学习技术是一条慢长而艰苦的道路,不能靠一时激情,也不是熬几天几夜就能学好的,必须养成平时努力学习的习惯。贵在坚持!【Android思维脑图(技能树)】知识不体系?这里还有整理出来的Android进阶学习的思维脑图,给大家参考一个方向。最后我在这里分享一下这段时间从朋友,大佬那里收集到的一些2019-2020BAT 面试真题解析Android 基础、Java 基础、Android 源码相关分析、常见的一些原理性问题等等,可以很好地。

2024-05-26 22:36:26 237

原创 2024最新Android大厂高频面试题解析大全(BAT TMD JD 小米)

插件化技术可以说是Android高级工程师所必须具备的技能之一,从2012年插件化概念的提出(Android版本),到2016年插件化的百花争艳,可以说,插件化技术引领着Android技术的进步。本章分别从绘制(UI)、内存、存储、稳定性、耗电以及安装包等几个方面进行优化,从系统上深入分析绘制和内存的原理,一步步深入了解导致性能问题的本质原因,同时讲述了多种性能优化工具的使用,通过分析典型案例,得到有效的优化方案,从而实现更高质量的应用。Java是Android开发的基础,同时也是大厂面试的第一道门槛。

2024-05-26 22:18:53 352

原创 2024最新Android中级面试题目汇总解答,2年以上经验必看

JVM 是可运行 Java 代码的假想计算机 ,包括一套字节码指令集、一组寄存器、一个栈、 一个垃圾回收,堆 和 一个存储方法域。JVM 是运行在操作系统之上的,它与硬件没有直接 的交互。

2024-05-26 22:17:49 272

原创 2024 ICPC长春赛区铜牌题

一开始我就判断像2 3 1中3这种凸起或者凹下去的转折点,因为这种转折点最多只能有2个,然后就对这最多两个转折点判断,但是转折点有转成常数列,这种就是特殊的转折点,我就死在这上面了233333。一种是突然减小的转折点,要判断 这个点a[i]是否同时出现a[i+1]a[i]的情况,画图看看就这道这种情况无论去掉这转折点还是转折点的前一个点都不能构成单调序列。题意:给出n*m的空地,每个空地上给出的数字是用方块叠起来的高度,在三维空间求出这些用立方体堆起来的表面积,底面积不算。

2024-05-26 22:00:14 320

原创 2022年为什么要使用Flutter构建应用程序?

一级目录二级目录。

2024-05-26 21:59:12 257

空空如也

空空如也

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

TA关注的人

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