学习autorelease 关于@ autoreleasepool{} 在main方法中有一个@autoreleasepool{} int main(int argc, char * argv[]) { NSString * appDelegateClassName; @autoreleasepool { // Setup code that might create autoreleased 移动开发 2025年05月20日 145 点赞 0 评论 6493 浏览
Android Studio修改国内镜像 国内的Android开发者,基本每隔一段时间就会碰到项目突然不能编译的情况。sdk更新、插件安装也有诸多不便,环境的折腾确实伤透了脑筋。本文主要记录下使用host配置dl.google.com的国内镜像。 1. 用文本编辑器打开host文件 host文件所在路径为: //对于Windows系统 C:\Windows\System32\drivers\etc\hosts //对于Mac系统 /e 移动开发 2025年03月26日 36 点赞 0 评论 6496 浏览
iOS 中为什么更新UI都要放在主线程 分析:首先在子线程中是不能进行UI 更新的,而可以更新的结果只是一个幻像:因为子线程代码执行完毕了,又自动进入到了主线程,执行了子线程中的UI更新的函数栈,这中间的时间非常的短,就让大家误以为分线程可以更新UI。如果子线程一直在运行,则子线程中的UI更新的函数栈 主线程无法获知,即无法更新。 其次因为开辟线程时会获取当前环境,如点击某个按钮,这个按钮响应的方法是开辟一个子线程,在子线程中对该按钮进 移动开发 2024年11月03日 134 点赞 0 评论 6515 浏览
Socket工作模式之WSAAsyncSelect模型 WSAAsyncSelect(异步选择)模型 ①WSAAsyncSelect(异步选择)模型介绍 Windows Sockets为了支持Windows消息驱动机制,使开发者能够方便地处理网络通信,它对网络事件采用基于消息的异步存取策略。该异步策略主要是通过异步选择函数WSAAsyncSelect()来实现的,该函数提供了消息机制的网络事件选择,当使用它登记的网络事件发生时,Windows应用程序相 移动开发 2025年08月29日 115 点赞 0 评论 6558 浏览
解决Xcode14"Application circumvented Objective-C runtime dealloc initiation for <%s> object" 升级到Xcode14后,App莫名其妙一运行就闪退,断点也分析捕捉不到对应的地方,日志一直显示"Application circumvented Objective-C runtime dealloc initiation for <%s> object",看起来像是apple底层代码迭代后导致的问题。 后面花了很多时间排查,定位到了是老项目中引入了IQKeyboardManager 移动开发 2025年04月21日 111 点赞 0 评论 6563 浏览
2022年iOS面试总结--不断更新当中ing 2020年的春天,成都的天气格外的闷热。 因为公司的原因,导致我不得不考虑去面试一家稳定成熟的大公司,自己从一开始也一直梦想着进入一家可以得到广阔平台的公司发展,有朝一日可以当上技术负责人,可是现实总是那么残酷,4年了,4年了,每次面试感觉自己还是只是会回答:我知道,但是没有深入研究过。这个我了解过,但是还没有处理过。然后就是一个劲的出汗来排解内心的压力。3次换工作,面试过30-40次,每次都只是 移动开发 2025年07月19日 183 点赞 0 评论 6588 浏览
Android可不可以在子线程中更新UI? 我们首先来看一段代码: 在一个activity的xml文件中随便写一个TextView文本控件,然后在Activity的onCreate方法中开启一个子线程并在该子线程的run方法中更新TextView文本控件,你会发现根本没有任何问题。 但是如果你把Thread.sleep(2000)放开绘发现报错崩溃: 我们从这堆栈开始分析源码原因: mButton.setText 移动开发 2025年06月14日 37 点赞 0 评论 6605 浏览
Swift版本的TableManager 一、概述 在OC的轮子中,使用一个RETableviewManager的轮子,核心原理是数据驱动页面,cell-item 一一对应,对UITableview页面的封装。 只要写好对应item和cell类,然后注册,交给manager即可,构建完整的页面;同时一些cell和item是可以被不同列表进行复用,只要给不同的item即可。 本人觉得项目使用效果还不错,因此写了个swift版本。 TBD:目 移动开发 2025年05月04日 84 点赞 0 评论 6606 浏览
07_Android协程 Android协程 本文以网络请求为例,由浅入深,来说明协程在Android中的使用方式。后半部分介绍一些协程概念。 (1)添加依赖项 如下: dependencies { implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.3.9") } (2)网络请求函数 这是一个同步的阻塞函数 移动开发 2025年04月03日 160 点赞 0 评论 6607 浏览
在UIKit中使用SwiftUI(SwiftUI和UIKit混合开发) 在UIKit中使用SwiftUI,需要使用UIHostingController对SwiftUI进行包装,返回的是UIViewController类型。 但是UIHostingController是SwiftUI的类,在OC中是不可以直接使用的,所以我们可以先创建一个Swift管理类,用来返回被包装的SwiftUI的控制器是UIViewController类型,可以直接在OC代码中使用。 如果还不 移动开发 2025年04月26日 174 点赞 0 评论 6627 浏览