1 、Keychain 是一個非常好用的本機存放區工具 完全可以替代NSuserDefault 來使用並且比NSuserDefault更安全 。 2 、Keychain相對於 NSuserDefault最主要的一點就是 NSuserDefault 只能項目內訪問 Keychain 說是所有項目公用的 可以做到跨項目讀取資料。 3、Keychain經常用來儲存用的的賬戶 密碼資訊
開發環境:Xcode6, IOS SDK8.1 真機調試:iphone5s, ios7.0 遇到問題:在iphone模擬器上顯示正常,而串連5s真機調試時,應用無法全螢幕顯示,如下圖: 開啟項目目錄中的images.xcassets檔案,如下圖,發現這裡缺少了launchimage的映像配置 解決方案:開啟項目配置-general-launch images 點擊Launch Images Source這一項中的Use Asset Catalog
在實際開發中我們,點擊一個button按鍵時,需要觸發一個事件去執行。使用者在正常操作情況下,單次點擊時,button只會響應一次點擊。但是如果使用者多次點擊一個button,那麼就會引起這個事件被多次執行,導致一些bug的出現。 如何優雅解決的這個問題呢。今天我們來使用Runtime來解決UIButton重複點擊的問題。 首先建立一個分類category,繼承於UIControl,名字自己定義。 UIControl+ZHW.h(.h檔案) @interface
一、填寫申請表單 申請蘋果開發人員帳號途中,我們會用到鄧白氏編碼,申請鄧白氏編碼的入口自然也是在申請蘋果開發人員帳號途中進入。 1.登入AppID 登入入口:https://developer.apple.com/account/ .公司開發人員帳號一般都是由老闆來管理的,所以使用老闆的個人AppID登入就好了,沒有就讓老闆申請一個。登入進來後進行以下操作: 選擇Company/Origanization,也就是99美元的那個公司開發人員帳號
ios 一步一步學會自訂地圖吹出框(CalloutView)-->(百度地圖,高德地圖,google地圖) 高德地圖 google地圖 百度地圖 吹出框 自訂 前言 在ios上邊使用地圖庫的同學肯定遇到過這樣的問題:吹出框只能設定title和subtitle和左右的view,不管是百度地圖還是高德地圖還是內建的google地圖,只提供了這四個屬性,如果想添加更多的view,只能自訂。可是,
每次更新sdk都需要重複的在真機下build,在模擬器下build,然後再合并靜態庫;為瞭解放雙手,嘗試著寫了個指令碼,一步完成以上工作。 一、指令檔 #!/bin/bash#要build的target名target_Name=XXX#編譯模式 Release、Debugbuild_model=Release#擷取工程當前所在路徑project_path=$(pwd)#編譯檔案路徑buildPath=${project_path}/build#匯出sdk地址exportSdkPath=
我們在使用第三方靜態庫的時候,一般會提醒在Other Linker Flags裡邊配置“-ObjC”或者“-all_load”或者“-force_load”; 它們的作用是: //-ObjC 告訴連結器將庫中的Objective-C類和Category類都載入進來(命名不重複的類),但是這樣子做有個弊端。沒有用到的類也都載入進來了,APP會變大。而且當庫中只存在Category類時,“-ObjC”就不起作用了 //-all_load
最近做測試時發現一個特別奇怪的bug、在每次app退回背景時候、當前app沒有被kill、然後再次切回app時、會閃現一下主畫面 最後鎖定罪魁禍首、在設定返回按鈕不顯示文字的時候、用了如下此方法、造成閃現、將此方法注掉後、此問題解決 //將返回按鈕的文字position設定不在螢幕上顯示 [[UIBarButtonItem appearance]
多人開發過程中、命名規範很重要、統一命名規範對於編碼可讀性有協助、下面和大家分享一下ios命名規範和圖片及切圖的命名規範 IOS命名規範 小駝峰命名法(CamelCase):第一個單詞小寫字母開頭,其他單字首大寫; 大駝峰命名法(PascalCase): 所有首字母大寫。命名規範: 1、類名、協議名:遵循大駝峰命名法; 2、常量:這裡的常量指的是宏(#define)、枚舉(enum)、常量(const)等,使用小寫”k“作為首碼,名稱遵循大駝峰命名法。 3、方法*
模擬器安裝位置 /Users/TTF/Library/Developer/CoreSimulator/Devices/模擬器標識(一些字串) 後面那些模擬器標識就是一些字串代表每一個不同的iOS裝置 比如D3E79030-5DB9-4E5B-8E46-5C3B100A4C1C就代表這是iPhone4S,點擊進去查看device.plist這個檔案就能知道。 iOS應用程式資源檔位置
摘抄自:http://zhidao.baidu.com/question/1605787265227542067.html Xcode6發布後,出現了很多的變動,功能性的變動,在這裡不進行過多的贅述,在WWDC上蘋果已經進行了講述,網上也有很多文章,這裡要介紹的是一些不太容易發現的,但很重要的小地方。1、Xcode6模擬器路徑的變更在Xcode5和之前的版本中,Xcode的模擬器路徑為:/Users/username/Library/Application
iOS 擷取當前蘋果裝置型號代碼: - (NSString*) doDevicePlatform { size_t size; int nR = sysctlbyname("hw.machine",NULL, &size, NULL,0); char*machine
OCMock總結 使用OCMock是為了某些不容易構造或者不用一擷取的對象,用一個虛擬對象來建立以便測試。在cocoa編程測試使用系統內建的ocunit,或者第三方的ghunit都沒有mock,一般使用oc mock和ghunit的組合來搭建測試架構來測試。 mock基本的用法有從class初始化mock對象, id mock = [OCMockObject mockForClass:[SomeClass class]]
兩個方法: - (CGSize)sizeWithAttributes:(nullable NSDictionary<NSString *, id> *)attrs NS_AVAILABLE(10_0, 7_0); - (CGRect)boundingRectWithSize:(CGSize)size options:(NSStringDrawingOptions)options attributes:(nullable
我們app的開發通常有2種認證方式 一種是Basic Auth,一種是OAuth;現在普遍還是使用OAuth的多,而使用Basic Auth認證的少,正好呢我今天給大家介紹的就是使用的比較少的Badic Auth認證方式,這種認證方式開發和調試簡單, 沒有複雜的頁面跳轉邏輯和互動過程,更利於發起方控制。然而缺點就是安全性更低,不過也沒事,我們可以使用https安全加密協議,這樣才更安全。 &
我在網上下載了一個Demo,在iPhone4和iPhone4S上顯示一切正常。但是使用iPhone5等的時候出現了顯示不全的問題當我使用iPhone5和iPhone5s真機測試時,在應用畫面的上下各有一條黑色,截圖如下: 檢查問題步驟: 一、我開始仔細檢查代碼,發現在整個工程中,沒有一個地方在設定畫面高度時候使用了固定值480,都是直接擷取螢幕大小,然後再設定畫面大小的。
前言 一個Universal程式還是iPhone、iPad倆個版本 。 通用的: 優點: 一個安裝包,方便管理、分發 可共用一套邏輯代碼,資料結構 缺點:
【iOS開發】多屏尺的自動適配 AutoLayout (純程式碼方式) (2014-09-19 09:35:47) 轉載▼ 標籤: autolayout ios開發 xcode ui 分類: Xcode/iOS/MacOS
在項目中,很多邏輯請求都需要用到UIButton
1.全域變數flag法 @property(nonatomic,assign)BOOLisClickedFlag;//防止重複點擊#pragma mark -- 全域變數flag法- (void)LJBtnClicked{ if (self.isClickedFlag ==YES) { self.isClickedFlag =NO; function//自己的函數 { 自己需要做的事情做完畢後,再開啟點擊