<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:media="http://search.yahoo.com/mrss/"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>iOS - 四号程序员</title>
	<atom:link href="https://www.coder4.com/archives/category/ios/feed" rel="self" type="application/rss+xml" />
	<link>https://www.coder4.com</link>
	<description>Keep It Simple and Stupid</description>
	<lastBuildDate>Thu, 12 Feb 2026 10:23:13 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.5</generator>
	<item>
		<title>苹果开发者证书不信任解法</title>
		<link>https://www.coder4.com/archives/8595</link>
					<comments>https://www.coder4.com/archives/8595#respond</comments>
		
		<dc:creator><![CDATA[coder4]]></dc:creator>
		<pubDate>Thu, 12 Feb 2026 10:23:13 +0000</pubDate>
				<category><![CDATA[iOS]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[developer]]></category>
		<category><![CDATA[开发者证书]]></category>
		<category><![CDATA[证书]]></category>
		<guid isPermaLink="false">https://www.coder4.com/?p=8595</guid>

					<description><![CDATA[重新下载G3证书并导入：https://www.apple.com/certificateauthority/ “Worldwide Developer Relations - G3 (Expiring 02/20/2030 00:00:00 UTC)”[......] 继续阅读]]></description>
		
					<wfw:commentRss>https://www.coder4.com/archives/8595/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>MacOS下Home和End解决方案</title>
		<link>https://www.coder4.com/archives/6876</link>
					<comments>https://www.coder4.com/archives/6876#comments</comments>
		
		<dc:creator><![CDATA[coder4]]></dc:creator>
		<pubDate>Mon, 25 Nov 2019 03:30:29 +0000</pubDate>
				<category><![CDATA[iOS]]></category>
		<guid isPermaLink="false">https://www.coder4.com/?p=6876</guid>

					<description><![CDATA[在Windows或者Linux下 Home是回到行首部 end是到行末尾 在MacOS下，各种按键被各种魔改，各个版本之间都不一致，所以才有了这篇文章 1 在大多数应用中，如何让Home和End表现正常 cd ~/Library mkdir KeyBindings cd KeyBindings nano DefaultKeyBinding.dict 文件中写如下内容 { /* Remap Home / End keys */ /* Ho[......] 继续阅读]]></description>
		
					<wfw:commentRss>https://www.coder4.com/archives/6876/feed</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>[转]Mac OS下Vi/Vim的PageUp/PageDown/Home/End替代方案</title>
		<link>https://www.coder4.com/archives/6866</link>
					<comments>https://www.coder4.com/archives/6866#respond</comments>
		
		<dc:creator><![CDATA[coder4]]></dc:creator>
		<pubDate>Wed, 20 Nov 2019 11:56:35 +0000</pubDate>
				<category><![CDATA[iOS]]></category>
		<guid isPermaLink="false">https://www.coder4.com/?p=6866</guid>

					<description><![CDATA[转载自：http://vivo.pub/2129 在mac os下面ssh到服务器来进行vi操作，因为键盘的局限性，没有PageUp/PageDown/Home/End，会严重影响效率。 其实替代方案也很简单，用vim自己的快捷键就成了。 例如：Ctrl-F(Forward) 相当于 PageDown，Ctrl-B(Backward)相当于PageUp。 再比如：^ 相当于Home，$ 相当于End（意义来自正则表达式）。 这回效率提升上去了吧；）[......] 继续阅读]]></description>
		
					<wfw:commentRss>https://www.coder4.com/archives/6866/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>brew安装thrift 0.9.3</title>
		<link>https://www.coder4.com/archives/6864</link>
					<comments>https://www.coder4.com/archives/6864#respond</comments>
		
		<dc:creator><![CDATA[coder4]]></dc:creator>
		<pubDate>Wed, 20 Nov 2019 07:41:34 +0000</pubDate>
				<category><![CDATA[iOS]]></category>
		<guid isPermaLink="false">https://www.coder4.com/?p=6864</guid>

					<description><![CDATA[brew install https://gist.githubusercontent.com/chrislusf/8b4e7c19551ba220232f037b43c0eaf3/raw/01465b867b8ef9af7c7c3fa830c83666c825122d/thrift.rb &#160;[......] 继续阅读]]></description>
		
					<wfw:commentRss>https://www.coder4.com/archives/6864/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>分析XCode编译时间瓶颈的小工具</title>
		<link>https://www.coder4.com/archives/5527</link>
					<comments>https://www.coder4.com/archives/5527#respond</comments>
		
		<dc:creator><![CDATA[coder4]]></dc:creator>
		<pubDate>Thu, 08 Jun 2017 07:36:31 +0000</pubDate>
				<category><![CDATA[iOS]]></category>
		<category><![CDATA[xcode]]></category>
		<category><![CDATA[编译]]></category>
		<guid isPermaLink="false">https://www.coder4.com/?p=5527</guid>

					<description><![CDATA[https://github.com/RobertGummesson/BuildTimeAnalyzer-for-Xcode 作者原文：https://medium.com/swift-programming/swift-build-time-optimizations-part-2-37b0a7514cbe[......] 继续阅读]]></description>
		
					<wfw:commentRss>https://www.coder4.com/archives/5527/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>iOS如何使用OperationQueue实现弹框依次展示</title>
		<link>https://www.coder4.com/archives/5510</link>
					<comments>https://www.coder4.com/archives/5510#respond</comments>
		
		<dc:creator><![CDATA[coder4]]></dc:creator>
		<pubDate>Mon, 22 May 2017 06:15:38 +0000</pubDate>
				<category><![CDATA[iOS]]></category>
		<category><![CDATA[ios]]></category>
		<category><![CDATA[弹框]]></category>
		<guid isPermaLink="false">https://www.coder4.com/?p=5510</guid>

					<description><![CDATA[大家都知道，在iOS中，每个vc只能同时展示一个AlertController。 即如果不消掉正在展示的AlertController，是无法展示下一个AlertController的。 在不破坏这个原则的前提下，我们可以使用(NS)OperationQueue，来实现 弹框的串行展示。 首先是DelayedOperation，它对Operation做了一个简单的Hack，支持延迟结束Operation，结束时候调用下finisheOperation即可。 import Fo[......] 继续阅读]]></description>
		
					<wfw:commentRss>https://www.coder4.com/archives/5510/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>UIAlertController + NSOperation</title>
		<link>https://www.coder4.com/archives/5508</link>
					<comments>https://www.coder4.com/archives/5508#respond</comments>
		
		<dc:creator><![CDATA[coder4]]></dc:creator>
		<pubDate>Fri, 19 May 2017 13:59:24 +0000</pubDate>
				<category><![CDATA[iOS]]></category>
		<guid isPermaLink="false">https://www.coder4.com/?p=5508</guid>

					<description><![CDATA[https://nickharris.wordpress.com/2016/02/10/uialertcontroller-nsoperation/[......] 继续阅读]]></description>
		
					<wfw:commentRss>https://www.coder4.com/archives/5508/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>iOS10在前台如何强制发push</title>
		<link>https://www.coder4.com/archives/5505</link>
					<comments>https://www.coder4.com/archives/5505#respond</comments>
		
		<dc:creator><![CDATA[coder4]]></dc:creator>
		<pubDate>Tue, 16 May 2017 08:41:01 +0000</pubDate>
				<category><![CDATA[iOS]]></category>
		<guid isPermaLink="false">https://www.coder4.com/?p=5505</guid>

					<description><![CDATA[UNMutableNotificationContent *content = [[UNMutableNotificationContent alloc] init]; content.body = body; content.userInfo = userInfo; content.sound = [UNNotificationSound defaultSound]; [content setValue:@(YES) forKeyPath:@"shouldAlwaysAlertWhil[......] 继续阅读]]></description>
		
					<wfw:commentRss>https://www.coder4.com/archives/5505/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>iOS如何支持手势返回</title>
		<link>https://www.coder4.com/archives/5484</link>
					<comments>https://www.coder4.com/archives/5484#respond</comments>
		
		<dc:creator><![CDATA[coder4]]></dc:creator>
		<pubDate>Fri, 28 Apr 2017 12:58:46 +0000</pubDate>
				<category><![CDATA[iOS]]></category>
		<guid isPermaLink="false">https://www.coder4.com/?p=5484</guid>

					<description><![CDATA[传统做法是在viewcontroller上设置navigationController的interactivePopGesturerecovnezer，但是bug很多，推荐如下，在nav controller上的做法： class C4MVTNavigationController: UINavigationController { // MARK: - Property override var supportedInterfaceOrientations: UIIn[......] 继续阅读]]></description>
		
					<wfw:commentRss>https://www.coder4.com/archives/5484/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>iOS中如何获得UITabBarController中每一个tab的具体frame</title>
		<link>https://www.coder4.com/archives/5479</link>
					<comments>https://www.coder4.com/archives/5479#respond</comments>
		
		<dc:creator><![CDATA[coder4]]></dc:creator>
		<pubDate>Thu, 27 Apr 2017 05:38:28 +0000</pubDate>
				<category><![CDATA[iOS]]></category>
		<guid isPermaLink="false">https://www.coder4.com/?p=5479</guid>

					<description><![CDATA[传送门：http://stackoverflow.com/questions/6325457/getting-the-frame-of-a-particular-tab-bar-item 我稍微改了一下： - (CGRect)frameForTabInTabBarWithIndex:(NSUInteger)index { NSMutableArray *tabBarItems = [NSMutableArray arrayWithCapacity:[self.tabBar.i[......] 继续阅读]]></description>
		
					<wfw:commentRss>https://www.coder4.com/archives/5479/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
