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

用户9239674的专栏

专栏成员
48
文章
52031
阅读量
12
订阅数
Java之戳中痛点之 synchronized 深度解析
4、两个线程同时访问同一对象的synchronized方法与非synchronized方法
用户9239674
2022-02-13
2610
Flutter系列之Flex布局详解
Flutter 是 Google 推出的跨平台 UI 框架,可以快速地在 Android 和 IOS 上构建高质量的应用程序,其主要特点是 Flutter 具有快速开发的能力、富有表现力和灵活的 Ui 以及良好的原生性能,本篇文章主要介绍 Flutter 中的 Flex 布局,如下:
用户9239674
2022-02-11
1.3K0
用Jetpack Compose完美复刻Flappy Bird!
Flappy Bird是13年红极一时的小游戏,其简单有趣的玩法和变态的难度形成了强烈反差,引发全球玩家竞相把玩,欲罢不能!遂选择复刻这个小游戏,在实现的过程中向大家演示Compose工具包的UI组合、数据驱动等重要思想。
用户9239674
2022-02-10
1.2K0
Android性能优化之内存泄漏,你想要的这里都有~
在Android中,内存泄露的现象十分常见;而内存泄露导致的后果会使得应用Crash 本文 全面介绍了内存泄露的本质、原因 & 解决方案,最终提供一些常见的内存泄露分析工具,希望你们会喜欢。
用户9239674
2022-02-09
7480
Jetpack Compose · 快照系统
Jetpack Compose 引入了一种处理可观察状态的新方法 —— Snapsot(快照)。在 Compose 中我们通过 state 的变化来触发重组,那么请思考以下几个问题:
用户9239674
2022-02-07
1K0
10 个冷门但又非常实用的 Docker 使用技巧
在平时的工作中,docker 接触得很多,除了经常使用的 docker run ,docker stop等命令,docker 还有很多十分有用但是却不经常使用的命令,下面就来总结一下:
用户9239674
2022-01-26
4130
Kotlin 委托属性在Android开发中的几个使用场景!
Kotlin 真的是一门美丽的开发语言,她拥有的一些很棒的特性使 Android 开发变成的有趣和令人兴奋。[委托属性]()就是其中之一,在这篇文章里我们将会看到委托是如何把 Android 开发变得更加轻松的。
用户9239674
2022-01-25
4.6K0
为什么我不建议你用去 “ ! = null " 做判空?
最终,项目中会存在大量判空代码,多么丑陋繁冗!如何避免这种情况?我们是否滥用了判空呢?
用户9239674
2022-01-22
9630
再见SharedPreferences,你好MMKV!
SharedPreferences是谷歌提供的轻量级存储方案,使用起来比较方便,可以直接进行数据存储,不必另起线程。
用户9239674
2022-01-20
6000
妙啊!用Jetpack Compose绘制出可爱的天气动画!
最近参加了Compose挑战赛的终极挑战,使用Compose完成了一个天气app。之前几轮挑战也都有参与,每次都学到不少新东西。如今迎来最终挑战,希望能将这段时间的积累活学活用,做出更加成熟的作品。
用户9239674
2022-01-19
1K0
安装一个apk引起的无法开机!
看完之后我立马回答:老大,这个我知道,一定是系统应用组的同学忘记在privapp-permissions-platform.xml文件下面加权限声明了。
用户9239674
2022-01-18
1.1K0
能否让APP永不崩溃—小光和我的对决
关于拦截异常,想必大家都知道可以通过Thread.setDefaultUncaughtExceptionHandler来拦截App中发生的异常,然后再进行处理。
用户9239674
2022-01-17
5220
自定义View实现字母导航控件
今天分享一个以前实现的通讯录字母导航控件,下面自定义一个类似通讯录的字母导航 View,可以知道需要自定义的几个要素,如绘制字母指示器、绘制文字、触摸监听、坐标计算等,自定义完成之后能够达到的功能如下:
用户9239674
2022-01-15
4520
炫酷~RecyclerView视差装饰器-ParallaxDecoration
接下来我要写一个简单示例,先分析一下布局,见下图,最外层是NestedScrollView,之后嵌套一个LinearLayout头部,中间TabLayout选择器,底部一个ViewPager
用户9239674
2022-01-14
7560
使用 Jetpack DataStore 进行数据存储
欢迎使用 Jetpack DataStore,这是一个经过改进的全新数据存储解决方案,旨在替代原有的 SharedPreferences。Jetpack DataStore 基于 Kotlin 协程和 Flow 开发,并提供两种不同的实现: Proto DataStore 和 Preferences DataStore。其中 Proto DataStore,可以存储带有类型的对象 (使用 protocol buffers 实现);Preferences DataStore,可以存储键值对。在 DataStore 中,数据以异步的、一致的、事务性的方式进行存储,克服了 SharedPreferences 的大部分缺点。
用户9239674
2022-01-12
1.1K0
Flutter实现电影院选座效果!
接到了一个仿电影院的需求,上周几乎是找遍了百度,谷歌,stackoverflow。均没有找到用flutter实现的效果,那只能自己写一个了。本文只讲思路,具体实现还需各位看官自己动手。只要看懂了下面的思路,实现起来非常简单。
用户9239674
2022-01-11
1.5K0
Kotlin + buildSrc:更好的管理Gadle依赖!
为了充分利用Android Plugin for Gradle 3.0+的优点,将Android项目拆分成多个module的做法越来越常见。然而,随着module数量的增多,我们很快就会遇到依赖管理的混乱问题。
用户9239674
2022-01-10
2.4K0
Android 布局优化真的难,从入门到放弃
Android的绘制优化其实可以分为两个部分,即布局(UI)优化和卡顿优化,而布局优化的核心问题就是要解决因布局渲染性能不佳而导致应用卡顿的问题,所以它可以认为是卡顿优化的一个子集。
用户9239674
2022-01-08
8390
Activity是如何实现LifecycleOwner的?
我们都知道Activity可作为LifecycleOwner为LiveData的使用提供条件,那么Activity是如何实现LifecycleOwner的呢?
用户9239674
2022-01-07
1.2K0
四步,搞定一个短信验证码登录!
1、构造手机验证码:使用random对象生成要求的随机数作为验证码,例如4位验证码:1000~9999之间随机数;
用户9239674
2021-12-30
1.2K0
点击加载更多
社区活动
【纪录片】中国数据库前世今生
穿越半个世纪,探寻中国数据库50年的发展历程
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档