首页
学习
活动
专区
工具
TVP
发布

指尖下的Android

专栏作者
67
文章
235476
阅读量
13
订阅数
Android 底部按钮被软键盘顶起问题解决
我们目前的项目是采用单 Activity 多 Fragment 的架构模式, AndroidManifest.xml 内 MainActivity 的配置如下所示。
萬物並作吾以觀復
2021-12-06
1.7K0
同步 IO 和异步 IO
啥是内核态呢,内核态就是 linux 内核,用户态则是用户进程中的某个线程,即 io 操作其实就是内核态和用户态的切换。
萬物並作吾以觀復
2021-11-29
1.3K0
Kotlin StandardKt
==TODO== 往往出现在子类实现抽象父类时被重写的抽象方法内,如果方法不重写就必须将 TODO 去除,否则会抛出异常
萬物並作吾以觀復
2021-11-24
3340
Java Lambda 和 Kotlin Lambda 的区别
Java 匿名内部类在编译时会创建一个 class ,增加类的加载开销,运行时该内部类无论是否用到外部参数每次都会生成该类的实例。jdk 1.8 后 lambda 的实现是在当前类增加一个私有静态方法,减少了类的开销
萬物並作吾以觀復
2021-11-24
2.4K0
Android TextView 仿动控件
看到一些应用中的点赞觉得挺有意思,具体效果大概就是这个样子 📷 50buq-l34h1.gif 然后我仿写了下,效果差不多,代码比较简单就不过多说明了 import android.animation.Animator; import android.animation.AnimatorListenerAdapter; import android.animation.ObjectAnimator; import android.annotation.SuppressLint; import android
萬物並作吾以觀復
2021-11-24
5320
Kotlin CallBack 如何更具 Kt 风味
在 Kotlin 项目中需要对输入框进行监听时需要写如下监听事件,这不跟 Java 几乎一样嘛,这可一点也不 Kotlin
萬物並作吾以觀復
2021-07-21
6290
Kotlin 类扩展实现原理
在 Kotlin 中当项目集成第三方 SDK 的时候,如果需要为其中某个类新增方法来可以通过 className.methodName(){}, 即 类名.方法名 的形式来扩展函数,那么同样和 Java 一样是 JVM 语言的 Kt 为什么就可以实现这种功能呢,以下为一个例子,借助它来详细探讨一下实现原理及细节。
萬物並作吾以觀復
2021-07-20
3550
Android N 边形 View
需求千奇百怪,对于登录后账户的头像,要求圆形、多边形、带描边、带 VIP 标示等等,所以实现一个 N 边形玩玩,效果和代码如下。
萬物並作吾以觀復
2021-06-09
3950
Kotlin 和 Java 关于局部变量的区别
众所周知,在 Java 方法内将局部变量作为参数传递到方法后,如果该参数是基本数据类型,那内部的赋值修改不会同步到外部,如果是引用数据类型,对于对象的赋值也是不会同步到外部的,但是对于对象的属性修改是会同步的,这是因为 Java 是值传递,修改的是副本,但是副本指向的属性地址是相同的。
萬物並作吾以觀復
2021-05-17
8650
Kotlin lazy 实现原理
上面的函数体为 lazy 的实现代码,该函数的参数为接收一个无参并返回值为 T 类型的函数,然后它的实现是 SynchronizedLazyImpl
萬物並作吾以觀復
2021-05-13
8680
Android 原生 ImageSpan 垂直局中及左右边距问题解决
关于Android 原生 ImageSpan 无法设置垂直局中及左右边距问题,找了很多博客,均无效或者有 bug,只能自己动手了,代码经测试有效。
萬物並作吾以觀復
2021-05-06
1.4K0
Android 性能优化
总结就是,提高负载能力让程序运行更快,用更少的资源做更多的活就是性能优化。 2.为什么要性能优化 随着科技不断发展、移动互联网的迅猛发展,手机硬件不断进步以及使用手机的人口增多,这样就导致我们的程序的实际运行环境是无法控制的,除开程序本身的质量而言,我们不能完全抛弃低端手机用户群体,这是我们的人口红利,一句话简而概之,我们要提升用户留存,不能让程序在低端手机运行不流畅甚至ANR。
萬物並作吾以觀復
2019-11-21
7840
Android AIDL 跨进程通信
安卓 IPC 跨进程通信有很多种方式,我们可以用 Bundle传递数据,通过 Intent 意图去打电话,在 Uri 里面传递电话号码
萬物並作吾以觀復
2019-08-12
4350
Linux中IO多路复用机制
之前的面试有问到主线程在 ActivityThread 里初始化 Looper 后调用了 Looper.loop() 这个死循环为什么不会阻塞主线程,当时回答因为在 Looper.loop() 方法里调用了 MessageQueue.next() 方法,这个 next() 中调用了nativePollOnce() ,这个本地方法最终实现是 android_os_MessageQueue_nativePollOnce ,因为这里的 IO 机制采用 epool ,当它没有消息时会调用 wait() 函数释放 CPU 进入休眠等待,当有消息来临会通过管道写入来通知唤醒。后面百度了一下 epool 函数,然后对比其他 IO 模型做一个笔记,首先说 IO 是什么, IO 就是 InputStream 和 OutputStream 的缩写,输入和输出的意思,传统的我们通过字节流或字符流来操作流,此时是同步阻塞 IO 模型,后面更新的Java NIO 是同步非阻塞 IO 模型
萬物並作吾以觀復
2019-08-05
1.2K0
记近一个礼拜的面试
中间还有一家我起了一大早过去面试,然后让写笔试题,最后说笔试没过,人事连杯水也没有倒,这素质杠杠的,今天下午面了一家奇葩公司,也是先写面试题,然后人事一直问有没有培训,你这项目是外包的吗,下载一下给我看下,下雨天坐四十分钟地铁去面试,技术面试也没有,然后问了我上家公司的薪资,通知下个礼拜复试,还让我打印银行流水跟五险一金,最后走了都没有倒一杯水,两家非常低素质的公司,最基本的礼貌都没有,深圳的安卓市场确实不太好了,基本凉凉,要求很多很高,工资偏偏还不高,可能是寒冬吧,各位安卓,且行且珍惜,慎重离职,我是被上家公司欠薪才无奈离职的。
萬物並作吾以觀復
2019-08-05
3940
OkHttp3.0 拦截器、调度器源码解析
聊一个框架的源码,我们先从它的用法说起,通过OkHttp来请求网络一般不外乎通过以下两种方式 : 1、异步回调网络请求
萬物並作吾以觀復
2019-07-17
8170
Error: Java exception was raised during method invocation
项目中有用到 @JavascriptInterface 来JS 、Java 通讯,但是 H5 报了一个异常,我在一个通讯方法里申请动态权限,后发现需要切换到主线程才行,其实是所有的 UI 操作都要切换到主线程,否则会抛出异常,后改为以下代码解决问题
萬物並作吾以觀復
2019-06-15
5.3K0
关于安卓自定义 View 设计的坑点漫谈
今天遇到一个问题,有测试反馈移动端 H5 页面点击输入框软键盘不弹起,然后我检查了一下代码,JS是开启了,焦点也默认获取,但是确实是点击没反应,后来发现是自定义 webview 的构造方法出了问题
萬物並作吾以觀復
2019-06-15
7290
RxJava 学习笔记总结(一)
操作符是把多个可观察的管道来合并消息到一条管道来处理,并可以对合并的消息进行格式处理,总的消息数量由最少的那一条管道决定。常见的运用场景比如一个消息页面需要用到两台服务器的查询请求,这样我们就需要通过查询两个接口来合并数据最后渲染UI。
萬物並作吾以觀復
2019-05-26
3010
Java中 private、protected、public 和 default 的区别
具有最大的访问权限,可以访问任何一个在classpath下的类、接口、异常等。它往往用于对外的情况,也就是对象或类对外的一种接口的形式。
萬物並作吾以觀復
2019-05-15
9440
点击加载更多
社区活动
Python精品学习库
代码在线跑,知识轻松学
热点技术征文第五期
新风口Sora来袭,普通人该如何把握机会?
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·干货材料·成员作品·最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档