Time of Update: 2017-01-19
GCD編程的核心就是dispatch隊列,dispatch block的執行最終都會放進某個隊列中去進行,它類似NSOperationQueue但更複雜也更強大,並且可以嵌套使用。所以說,結合block實現的GCD,把函數閉包(Closure)的特性發揮得淋漓盡致。dispatch隊列的產生可以有這幾種方式:1. dispatch_queue_t queue = dispatch_queue_create("com.dispatch.serial", DISPATCH_QUEUE_SERIAL)
Time of Update: 2017-01-19
在iOS開發中,多線程的實現方式主要有三種,NSThread、NSOperation和GCD,我前面部落格中對NSOperation和GCD有了較為詳細的實現,為了學習的完整性,今天我們主要從代碼層面來實現NSThread的使用。案例代碼上傳至 https://github.com/chenyufeng1991/NSThread。(1)初始化並啟動一個線程 - (void)viewWillAppear:(BOOL)animated { [super
Time of Update: 2017-01-19
廢話不多說,直接給大家貼代碼了。一,代碼。- (void)viewDidLoad{[super viewDidLoad];// Do any additional setup after loading the view.//第一種方法NSLog(@"--first-%i",[self convertToInt:@"123我愛你"]);//第二種方法NSLog(@"--second--%ld",[self getToInt:@"123我愛你"]);}//得到中英文混合字串長度 方法1-
Time of Update: 2017-01-19
最近遇到一個關於導覽列返回按鈕的問題,因為之前項目裡面都是用的系統預設的返回按鈕樣式所以沒有想過要去更改,後來有需要將返回按鈕箭頭旁邊的文字去掉,同時將該返回按鈕的點擊事件重新定義。一開始嘗試自訂按鈕然後設定為leftBarButtonItem,但是這樣圖片可能跟系統內建的不一樣,還有就是返回按鈕的位置跟系統內建的不一樣。後來找了一些資料,發現將文字去掉比較簡單,一般做法是控制器中添加如下代碼,然後他的下一級控制就有一個只有箭頭沒有文字返回按鈕:複製代碼
Time of Update: 2017-01-19
問題:實現下圖中右側的按鈕文字效果方法:[MyTools createMyImageview:topEditView frame:CGRectMake(widthAll-90, 12, 17, 16) imageName:@"離線課程_下載更多.png"];UIButton *downMoreButton = [MyTools createMyBtn:@"下載更多" frame:CGRectMake(widthAll-70, 10, 60, 20) uiview:topEditView
Time of Update: 2017-01-19
首先說明下,下面兩種方法均可以獲得手機的mac地址,但是有個限制,是在iOS7以下才可以獲得。iOS7以後蘋果對於sysctl和ioctl進行了技術處理,MAC地址返回的都是02:00:00:00:00:00。官方文檔上這樣寫的:"Twolow-level networking APIs that used to return a MAC address now return thefixed value 02:00:00:00:00:00. The APIs in question are
Time of Update: 2017-01-19
效果圖如下代碼實現以及思路下面分析:代碼建立導航控制器Appdelegate.m中#import "AppDelegate.h"#import "ViewController.h"@interface AppDelegate ()@end@implementation AppDelegate- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary
Time of Update: 2017-01-19
UITableView用來以表格的形式顯示資料。關於UITableView,我們應該注意:(1)UITableView用來顯示表格的可見部分,UITableViewCell用來顯示表格的一行。(2)UITableView並不負責儲存表格中的資料,而是僅僅儲存足夠的資料使得可以畫出當前可見部分。(3)UITableView從UITableViewDelegate協議擷取配置資訊,從UITableViewDataSource協議獲得資料資訊。(4)所有的UITableView實現時實際上只有一列,但
Time of Update: 2017-01-19
一、前言部分最近在面試,重新溫習了一遍多線程,希望加深一遍對於多線程的理解。1、什麼是進程?1).要瞭解線程我們必須先瞭解進程,通俗來講進程就是在系統中啟動並執行一個應用程式。2).每個線程之間是獨立存在的,分別運行在其專用的且受保護的記憶體空間中。3).比如開啟QQ或Xcode系統會分別開啟兩個進程
Time of Update: 2017-02-16
用keychain這個特點來儲存裝置唯一標識。,keychain標識由於IOS系統儲存的資料都是在sandBox裡面,一旦刪除App,sandBox也不複存在。好在有一個例外,那就是keychain(鑰匙串)。通常情況下,IOS系統用NSUserDefaults儲存資料資訊,但是對於一些私密資訊,比如密碼、認證等等,就需要使用更為安全的keychain了。keychain裡儲存的資訊不會因App被刪除而丟失。所以,可以利用這個keychain這個特點來儲存裝置唯一標識。那麼,如何在應用裡使用使用
Time of Update: 2017-02-17
iOS開源項目周報0216,ios開源項目0216由OpenDigg 出品的iOS開源項目周報第八期來啦。我們的iOS開源周報集合了OpenDigg一周來新收錄的優質的iOS開源項目,方便iOS開發人員便捷的找到自己需要的項目工具等。AnimatedCollectionViewLayout UICollectionView條目切換動畫過渡效果TinyConstraints 使自動布局更人性化的文法糖JustLog iOS日誌工具Swift-CellAnim
Time of Update: 2017-02-15
GitHub 上下載代碼運行報錯 :'The sandbox is not sync with the Podfile.lock\',githubpodfile.lock問題描述:github下載的Demo,很多時候使用到CocoaPods,有的時候因為依賴關係或者版本問題不能編譯運行。出現例如The sandbox is not sync with the Podfile.lock問題時候,如下所示diff: /../Podfile.lock: No such file or
Time of Update: 2017-02-11
IOS(Swift)頁面頂部實現展開效果代碼,iosswift //懶載入 //頂部需要展開自訂視圖 lazy var headView:MyHeaderView = { //let hframe = CGRect(x: 0, y: 0, width: swidth, height: swidth/self.imgRation) // let hview = Bundle.main.loadNibNamed("MyInfoHeaderView",
Time of Update: 2017-02-08
iOS之如何啟動app時全螢幕顯示Default.png(圖片),大部分app在啟動過程中全螢幕顯示一張背景圖片,比如新浪微博會顯示這張: 要想在iOS中實現這種效果,毫無壓力,非常地簡單,把需要全螢幕顯示的圖片命名為Default.png即可,在iOS
Time of Update: 2017-02-10
iOS開發-UI (十一) UITabBarController,iosui開發知識點: 1.UITabBarController使用 2.UITabBarItem使用 關於TabBarController除了本次整理的內容,有興趣的可以看下我以前發過的這兩篇,在實際開發中很實用的東西.RDVTabBarController的基本使用 以及tabbar的防止雙點擊方法從tabBarController的一個item上的控制器跳轉到另一個item上的控制器 ==========
Time of Update: 2017-02-10
iOS之UITextField輸入錯誤的震動動畫,iosuitextfield //左右震動效果- (void)shake:(UIView *)view {CGRect frame = view.frame;CAKeyframeAnimation *shakeAnimation = [CAKeyframeAnimation animationWithKeyPath:@"position"];CGMutablePathRef shakePath =
Time of Update: 2017-01-22
iOS開發-UI (七)view層次動畫 和 ImageView,-uiimageview知識點: 1.UIView的簡單動畫2.UIView層次關係3.UIImageView的使用4.UIView 停駐模式 =====================UIView的簡單動畫 1.UIView座標系統 1)UIView相對於父視圖的座標系統
Time of Update: 2017-02-09
iOS開發之動畫中的時間(概況),ios概況一、引言在iOS開發中使用動畫時,可以通過設定動畫的duration、speed、begintime、offset屬性,來設定動畫的時間長度、速度、起始時間及起始位移。用一個簡單的例子來說明各個參數的的作用。動畫很簡單,一個紅色的方塊從左移到右邊。動畫的期間是1s,沒有重複,效果如下。 CFTimeInterval currentTime = CACurrentMediaTime(); CFTimeInterval
Time of Update: 2017-01-30
iOS開發入門 ☞ C語言系列二,ios常量C語言有豐富的資料類型,在開發中,一般用常量或者變數來表示這些資料"量"表示資料。常量,則表示一些固定的資料,也就是不能改變的資料。10.1;// 雙精確度double5.2f; //單精確度float'a'; // 字元型常量'ab'; // 錯誤'李'; // 錯誤寫法, 因為一個漢字佔3個位元組'\n';//字元型常量(逸出字元,表示單個字元) 定義常量的方法:const int
Time of Update: 2017-01-22
iOS開發-UI (一)補充 UIWindow UIView UIlabel,-uiuiwindow之前忘了把這些整理出來,現在補充一下,應該放在前面學習的知識點: 1.UI的初步認識 2.UIWindow 3.UIView 4.UIlabel ======================== UI的初步認識 1.什麼是UI(*) UI即User Interface(使用者介面)的簡稱。UI設計則是指對軟