Time of Update: 2018-07-24
在下初學IOS編程,有很多不懂以及不瞭解的地方,本著分享的精神,將自己學到用到的一些東西寫出來,如果有不正確的地方,希望大家指正。 本次講解的是IOS下各個檔案夾的相關知識。
Time of Update: 2018-07-24
http://blog.csdn.net/ring0hx/article/details/28891121 在開發ios長串連遊戲的過程中遇到一個問題:在遊戲運行過程中玩家按下home鍵或者其他原因遊戲被掛起,socket串連不會斷開,伺服器為了節省資源,在一段時間後會主動關閉這個串連。當玩家再次切回到遊戲後,前端並不知道這個串連已經斷開了,繼續通過斷開的socket發送訊息,這時候send函數會觸發SIGPIPE異常導致程式崩潰。
Time of Update: 2018-07-24
主要內容: 1、git add -A 2. git add . 3. git add -u 一、概覽: git add是進行git代碼管理的第一步,是用來儲存修改過的代碼的,但是在git裡常用的有三條git add命令,分別是git add -A 、 git add -u 、git add . 這三條命令大致功能差不多,但是還有一些區別,下邊來看張圖: 二、解釋:上圖的解釋可能還不夠清楚,那麼看下邊這張圖:
Time of Update: 2018-07-24
本文收藏自:http://www.jianshu.com/p/5d625f86bd02 源碼 https://github.com/chenfanfang/AvoidCrash 程式崩潰經曆 其實在很早之前就想寫這篇文章了,一直拖到現在。 程式崩潰經曆1
Time of Update: 2018-07-24
1.確認認證是否與app的Bundle ID是否一致 2. 確認你的推送認證是否已經到期 3.確認你的APP_KEY是否和極光APP_KEY是否一致 4.正確調用bindChannel,並成功返回appid、userid和channelid,而且appid請確認是正確的應用; 5.確認代碼與官方文檔是否有出入 6.確認代碼無誤後,請確認push notifications 是否開啟
Time of Update: 2018-07-24
我是採用的AVAudioRecorder這個架構來進行錄音 這個錄音跟官方網站上的speakHere有些區別,最大的區別是,這個必須要錄製完成才能處理檔案,而speakhere樣本是可以實現邊錄製邊上傳的效果。 #import <AVFoundation/AVFoundation.h> #import <CoreAudio/CoreAudioTypes.h> 引入架構,這是使用錄音功能的基本配備
Time of Update: 2018-07-24
著作權聲明:本文為博主原創文章,未經博主允許不得轉載。 目錄(?)[+] 首先認識一下UICollectionView [objc] view plain copy
Time of Update: 2018-07-24
原文地址:http://www.raywenderlich.com/zh-hans/30818/ios%E5%BA%94%E7%94%A8%E5%B4%A9%E6%BA%83%E6%97%A5%E5%BF%97%E6%8F%AD%E7%A7%98 點擊開啟連結 這篇文章還可以在這裡找到 英語 If you're new here, you may want to subscribe to my RSS feed or
Time of Update: 2018-07-25
轉自:http://www.cnblogs.com/wendingding/p/3766347.html 文頂頂 iOS開發UI篇—常見的專案檔介紹 一、專案檔結構示意圖 二、檔案介紹 1.products檔案夾:主要用於mac電腦開發的可執行檔,ios開發用不到這個檔案 2.frameworks檔案夾主要用來放依賴的架構 3.test檔案夾是用來做單元測試的
Time of Update: 2018-07-24
和配件進行通訊 在iPhone OS 3.0及之後的系統上,External Accessory架構(ExternalAccessory.framework)提供了一種管道機制,使應用程式可以和iPhone或iPod touch裝置的配件進行通訊。通過這種管道,應用程式開發人員可以將配件層級的功能整合到自己的程式中。 請注意:下面部分將向您展示iPhone應用程式如何串連配件。如果您有興趣成為iPhone或iPod
Time of Update: 2018-07-24
[box.actionButton.layer setMasksToBounds:YES]; [box.actionButton.layer setCornerRadius:10.0]; //設定矩形四個圓角半徑 //邊框寬度 [box.actionButton.layer setBorderWidth:1.0]; //設定邊框顏色有兩種方法:第一種如下: CGColorSpaceRef colorSpace =
Time of Update: 2018-07-24
前言 iOS本機快取資料方式有五種: 1.直接寫檔案方式:可以儲存的對象有NSString、NSArray、NSDictionary、NSData、NSNumber,資料全部存放在一個屬性列表檔案(*.plist檔案)中。 2.NSUserDefaults(喜好設定),用來儲存應用設定資訊,檔案放在perference目錄下。 3.歸檔操作(NSkeyedArchiver),不同於前面兩種,它可以把自訂對象存放在檔案中。
Time of Update: 2018-07-24
Xcode 7真機測試詳解 1.準備 注意:一定要讓你的真機裝置的系統版本和app的系統版本想對應,如果不對應就會出現一個很常見的問題:could not find developer disk image 首先,準備好下面的裝置機相關軟體 MAC版本:OSX10.10.4 Xcode版本:Xcode7 beta5(點擊下載) 真機裝置:iPad Air(iOS
Time of Update: 2018-07-24
#import "HomeTableViewController.h" #import "CZApp.h" @interface HomeTableViewController () //plist檔案資料的容器 @property(nonatomic,strong)NSArray *listArray; //管理全域下載操作的隊列
Time of Update: 2018-07-24
使用自訂字型 方式一:本地字型匯入到工程目錄使用 首先,去找個字型包下載下來,我用的是方正的蘭亭特黑簡體(圖1),2.5M大小 拖到工程目錄下,確保在Copy Bundle Resources裡能看到這個包(圖2) 配置plist:在info.plist裡加入欄位Fonts provided by application添加一個item為字型包的名字(圖3) 有人部落格裡說接下來就開啟字型包記下名稱(圖4
Time of Update: 2018-07-24
Core Animation是直接作用在CALayer上的(並非UIView上)非常強大的跨Mac OS X和iOS平台的動畫處理API,Core Animation的動畫執行過程都是在後台操作的,不會阻塞主線程。 核心動畫繼承結構 核心動畫繼承結構 注意:核心動畫中的虛類不能使用,而應該使用他們子類中的實類。 Core Animation的使用步驟
Time of Update: 2018-07-24
簡介 在iOS裝置安裝APP後,通常都會詢問是否允許發送通知(下圖),同意後,一般情況下使用者都會收到某APP的push。比如,使用者收到一條微博,他們喜歡的球隊贏了比賽,或者他們的晚飯準備好了,既然APP不在運行,所以APP不能檢查這些事件。 幸運的是Apple針對這些問題提供瞭解決方案。開發人員可以寫一個服務端的組建,替代用戶端不停的檢測或者在後台工作。 Push的原理
Time of Update: 2018-07-25
WAV:無損 是 微軟公司 開發的一種音效檔格式,它符合PIFFResource Interchange File Format檔案規格,用於儲存WINDOWS平台的音頻資訊資源,被WINDOWS平台及其 應用程式
Time of Update: 2018-07-24
這個分為3種情況 1. 當APP為關閉狀態時,點擊通知欄訊息跳轉到指定的頁面 2. 當APP在後台運行時,點擊通知欄訊息跳轉到指定的頁面 3. 當APP在後台運行時,不會有通知欄提醒,也就不會跳轉到指定介面 針對1.的處理 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{ [self
Time of Update: 2018-07-25
NSDate儲存的是世界標準時(UTC),輸出時需要根據時區轉換為本地時間 好像是從ios4.1開始[NSDate date];擷取的是GMT時間,這個時間和北京時間相差8個小時,以下代碼可以解決這個問題 //方法一 - (void)tDate { NSDate *date = [NSDatedate]; NSTimeZone *zone =