移动开发

Android-推荐一个带数字的进度条开源库(NumberProgressBar)

图片来源网络,入侵必删 在日常的开发中,我们需要执行一个耗时任务的时候,我们可能需要通过带数字的进度条来提示我们的用户。这篇博客分享一个带数字的进度条开源库,帮小伙伴们快速实现想要的效果。 NumberProgressBar 一个带数字的进度条开源库。 效果图 开源库提供的效果图 导入项目 dependencies { compile 'com.daimajia.

Android Jetpack架构组件(十)— StartUp

一、StartUp简介 应用程序启动库提供了一种在应用程序启动时初始化组件的简单、高效的方法。库开发人员和应用程序开发人员都可以使用StartUp来简化启动序列并显式设置初始化顺序。 StartUp允许您定义共享单个内容提供程序的组件初始化程序,而不是为每个需要初始化的组件定义单独的content provider。这可以显著缩短应用程序启动时间。 简单的说就是通过一个公共的content pro

2025最新版 Android Studio安装及组件配置(SDK、JDK、Gradle)

目录 原生 Android 简介 Android Studio必备组件 一、Android Studio安装 二、Android SDK 配置 三、JDK 配置(选做) 四、Gradle 配置 五、新项目测试 原生 Android 简介Android 是由 Google 开发的移动操作系统,而“原生 Android 开发”指的是直接使用

iOS DispatchSourceTimer 定时器

1. 概述 说起计时器,很多开发人员第一时间就会想起Timer,但是随着使用的深入,慢慢就发现Timer其实不是很好用,比如说TableView滑动时候不执行,Timer循环引用。 2. DispatchSourceTimer DispatchSourceTimer,也就是大家通常叫的GCD Timer,是依赖于GCD的一种Timer,Runloop的底层代码中也用到这种Timer,可见GCD T

iOS知识复习笔记(6)--- 自动释放池AutoreleasePool

原理 autoreleasePool 是OC中的内存自动回收机制,它可以延迟加入autoreleasepool中的变量release的时机,正常情况下,创建的变量会在超出作用域的时候release,但是如果变量加入autoreleasepool,那么release将会延迟执行。 释放时机 被autorelease修饰的对象,释放时机有两种: 如果通过代码添加一个autoreleasepool,在

Android动画原理分析

简单描述为:将View的一次大的属性变化拆分为多次小的属性变化,在每次VSYNC信号到来时,根据当前时间和插值器来计算当前View属性的值,然后给该View设置该属性值,直到动画执行完毕。其中Choreographer将动画拆分成一次次小的属性变化,Choreographer是动画的指挥者。理想情况下,属性刷新次数(动画拆分为多次小的属性变化)=动画执行时间/16.7ms。 我们从以下4个问题来讲

UIStackView之一问一答

前言 此篇文章作为在使用UIStackView前的一些答疑,既是扫盲篇,也是实用篇。以下会讲述一些实用的案例,目的就是让更多的人拥抱UIStackView。同时欢迎小伙伴通过评论区讲讲使用StackView遇到的问题。 答疑 排列视图间距大小不一 问:排列视图间距大小不一,可以用UIStackView吗? 答:当然可以用,UIStackView虽然有space属性,但是适用于所有的排列视图,如果想

Android通知栏增加快捷开关的技术实现

我们通常可以在通知栏上看到“飞行模式”、“移动数据”、“屏幕录制”等开关按钮,这些按钮都属于通知栏上的快捷开关,点击快捷开关可以轻易调用某种系统能力或打开某个应用程序的特定页面。那是否可以在通知栏上自定义一个快捷开关呢?答案是可以的,具体是通过TileService的方案实现。 TileService继承自Service,所以它也是Android的四大组件之一,不过它是一个特殊的组件

XCode14 & iOS16 适配问题汇总

Xcode 14 beta 6下载官方地址(需要AppID登录) iOS16 Beta8版 描述文件下载官方地址(需要AppID登录) 一、iOS16手机开启开发者模式 "developer mode disable" iOS16手机未打开开发者模式时: 1、Xcode 无法选中 iOS16的设备,报错:developer mode disable 2、无法打开升级前编译的App 解决办法:在你