原创 《幸運大轉盤》代碼分享

《幸運大轉盤》有一句代碼是這樣的: self.rotateView.transform = CGAffineTransformMakeRotation(-angle); 它出現在延遲派遣消息 dispatch_after 裏面,然而你

原创 原子和非原子屬性

一、原子和非原子屬性 1. OC在定義屬性時有nonatomic和atomic兩種選擇: atomic:原子屬性,爲setter方法加鎖(默認就是atomic); nonatomic:非原子屬性,不會爲setter方法加鎖。

原创 Weak、Strong、assign 和 autorelease + 1道面試題

一、weak、strong、assign的理解 1. OC 對象用 strong,爲什麼連線的ui控件卻用weak? controller → view → view.subViews → imageView → 強引用 contr

原创 iOS開發之多線程編程:GCD

1.     什麼是GCD? 全稱是Grand Central Dispatch,是純C語言,提供了非常多強大的函數。 2.     GCD的優勢 GCD是蘋果公司爲多核的並行運算提出的解決方案; GCD會自動利用更多的CPU內核(

原创 Foundation框架之NSString的小衆筆記

部分Foundation框架的總結: 1.範圍 _NSRange 的結構體:     typedef struct _NSRange {         unsigned int location;         unsi

原创 歸檔解檔(編碼解碼)

1.理解 a.  如果對象是NSString、NSDictionary、NSArray、NSData、NSNumber等類型,可以直接用NSKeyedArchiver進行歸檔和恢復; b. 不是所有的對象都可以直接用這種方

原创 手勢識別功能(Gesture Recognizer)

1. 手勢識別概念 a. iOS 3.2之後,蘋果推出了手勢識別功能(GestureRecognizer),在觸摸事件處理方面,大大簡化了開發者的開發難度。 b. 爲了完成手勢識別,必須藉助於手勢識別器----UIGes

原创 多線程基礎知識介紹

1.基本概念 a. 同步執行: 1個線程中任務的執行是串行的; 如果要在1個線程中執行多個任務,那麼只能一個一個地按順序執行這些任務; 也就是說,在同一時間內,1個線程只能執行1個任務。 b. 異步執行: 多個人可以同時執行多個任務。

原创 awakeFromNib與viewDidLoad的區別

當一個nib文件對應兩個類,File's Owner的class爲CZViewController,Objects下的View對應的爲CZView時: 【如果不好理解的話,你可以這麼理解:            Main.storyb

原创 XML屬性列表(plist)歸檔

XML屬性列表(plist)歸檔 1> 理解: a. 屬性列表是一種XML格式的文件,拓展名爲plist; b.如果對象是NSString、NSDictionary、NSArray、NSData、NSNumber等類型,就可

原创 偏好設置的存儲

1. 理解: a. 很多iOS應用都支持偏好設置,iOS提供了一套標準的解決方案來爲應用加入偏好設置功能。 b. 每個應用都有個NSUserDefaults實例,通過它來存取偏好設置,比如:保存用戶名、字體大小、是否自動登錄等。 c.

原创 線程間通信

1. 什麼叫做線程間通信 在1個進程中,線程往往不是孤立存在的,多個線程之間需要經常進行通信。 2. 線程間通信的體現 1個線程傳遞數據給另1個線程; 在1個線程中執行完特定任務後,轉到另1個線程繼續執行任務。 線程間通信常用方法

原创 實現從一個應用程序內部跳轉到另一個應用程序的Demo

2個APP素材: 《網易彩票》 《幸運大轉盤》 原理理解1: 蘋果手機中的APP都有一個沙盒,APP就是一個信息孤島,相互之間是不可以進行通信的。 但是iOS的APP可以註冊自己的URLScheme,來實現app之間的互相調用。 我們

原创 iOS中多線程的實現方案之pthread和NSThread

【文章結尾附上iOS中多線程的實現方案總結】 一、pthread a. demo1 b. demo2 c. 對demo2中提到的 __bridge 的理解 ARC只負責OC的代碼,不負責 c 的代碼; 在ARC中,使用到和 c 

原创 多線程的安全隱患

1. 資源共享 1塊資源可能會被多個線程共享,也就是多個線程可能會訪問同一塊資源; 比如多個線程訪問同一個對象、同一個變量、同一個文件; 當多個線程訪問同一塊資源時,很容易引發數據錯亂和數據安全問題。 2. 安全隱患示例–存錢取錢