Xcode使用時(shí)的常用效果集合(持續(xù)更新。精堕。孵淘。)

收納:個(gè)人iOS項(xiàng)目常用效果方法注意點(diǎn)集錦

小白的學(xué)習(xí)路上整理的小知識(shí)點(diǎn):





1、在AUIViewController頁(yè)面上顯示BUIViewController頁(yè)面的半透明背景歹篓。

在A控制器push到B控制器頁(yè)面的方法中:

//設(shè)置半透明背景瘫证,需加載此判斷,否則頁(yè)面效果是使用present方法彈出時(shí)遇到底層view變黑(ios為了保證系統(tǒng)流暢度同一時(shí)間只允許顯示一個(gè)viewController)

if ([[[UIDevice currentDevice] systemVersion] floatValue]>=8.0) {

Bvc.modalPresentationStyle=UIModalPresentationOverCurrentContext;

}else{

self.modalPresentationStyle=UIModalPresentationCurrentContext;

}

隨后在B控制中的init方法中庄撮,設(shè)置背景顏色

//設(shè)置半透明背景

UIColor *color=[UIColor blackColor];

self.view.backgroundColor=[color colorWithAlphaComponent:0.7];

相關(guān)文檔鏈接:

iOS 設(shè)置視圖半透明而子控件不透明


2背捌、導(dǎo)航試圖下的多個(gè)頁(yè)面,設(shè)置直接“返回首頁(yè)”洞斯。

有時(shí)候我們的NavigationController下面會(huì)有好幾層毡庆,進(jìn)到里面的view之后又想返回到上面的幾層view,只要是同一個(gè)NavigationController父類(lèi)下的view都可以用用下面這句代碼烙如。

[self.navigationControllerpopToViewController:[self.navigationController.viewControllersobjectAtIndex:([self.navigationController.viewControllerscount] -4)]animated:YES];

這句代碼什么都不用改么抗,只要把數(shù)字“2”改成你要網(wǎng)上跳轉(zhuǎn)的層數(shù)+1就行。

試了一下亚铁,“1”代表當(dāng)前的view蝇刀,“2”代表上一層的view,“3”代表上上層的view徘溢,以此類(lèi)推吞琐。


3、為導(dǎo)航欄主題添加背景和文字顏色:

設(shè)定導(dǎo)航條背景顏色

方法1:[[UINavigationBarappearance]setBarTintColor:[UIColorblackColor]];

方法2:self.navigationController.navigationBar.barTintColor = [UIColor greenColor];

設(shè)定導(dǎo)航欄文字顏色

方法1:[self.navigationController.navigationBar setTitleTextAttributes:@{NSFontAttributeName:[UIFont systemFontOfSize:19],NSForegroundColorAttributeName:[UIColor whiteColor]}];

方法2:self.navigationController.navigationBar.tintColor = [UIColor whiteColor];


4甸昏、把漢字轉(zhuǎn)換為拼音顽分。(如需用直接調(diào)用方法)

-(NSString*)hanzi2pinyin:(NSString*)str{

NSMutableString * ms = [[NSMutableString alloc]initWithString:str];

if(CFStringTransform(( __bridge CFMutableStringRef)ms,0,kCFStringTransformMandarinLatin,NO)){

NSLog(@"Pingying: %@", ms);// wǒ shì zhōng guó rén

}if(CFStringTransform((__bridge CFMutableStringRef)ms, 0,kCFStringTransformStripDiacritics,NO)) {

NSLog(@"Pingying: %@", ms);// wo shi zhong guo ren

}

return ms;

}

用kCFStringTransformMandarinLatin方法轉(zhuǎn)化出來(lái)的是帶音標(biāo)的拼音,如果需要去掉音標(biāo)施蜜,則繼續(xù)使用kCFStringTransformStripCombiningMarks方法即可。


5雌隅、關(guān)閉或退出鍵盤(pán)的方式:

第一種:點(diǎn)擊return,直接關(guān)閉鍵盤(pán)翻默。(使用條件:能獲取到obj對(duì)象時(shí))(有UITextfileddelegate協(xié)議)

-(BOOL)textFieldShouldReturn:(UITextField*)textField{

return[texresignFirstResponder];

}

第二種:點(diǎn)擊背景View收起鍵盤(pán)(你的View必須是繼承control)(使用條件:有多個(gè)obj對(duì)象時(shí))

[self.view?endEditing:YES];

第三種:你可以在任何地方加上這句話,可以用來(lái)統(tǒng)一收起鍵盤(pán)恰起。

[[[UIapplicationsharedApplication]?keyWindow]?endEditing:YES];

第四種:直接發(fā)送 resignFirstResponder 消息:

[[UIApplication?sharedApplication]?sendAction:@selector(resignFirstResponder)


6 iOS10適配:被棄用的openURL

文檔鏈接:iOS10適配:被棄用的openURL

蘋(píng)果在iOS 2中引入了openURL:方法來(lái)進(jìn)行APP間的跳轉(zhuǎn)修械。不過(guò)在iOS 9中,相關(guān)的canOpenURL:函數(shù)已經(jīng)被私有化了检盼,蘋(píng)果禁止開(kāi)發(fā)者查詢?cè)O(shè)備上是否安裝了某款A(yù)PP肯污。在iOS 10中,蘋(píng)果棄用了openURL怒医,轉(zhuǎn)而用openURL:options:completionHandler:替代豺旬。它可以異步執(zhí)行并在主隊(duì)列中執(zhí)行完成后進(jìn)行回調(diào)(此方法替換原來(lái)的openURL:)。

關(guān)于Options 參數(shù)

UIApplication 頭文件為options字典列出了一個(gè)key:

UIApplicationOpenURLOptionUniversalLinksOnly:如果這個(gè)要打開(kāi)的URL有效贮聂,并且在應(yīng)用中配置它布爾值為true(YES)時(shí)才可以打開(kāi)柬唯,否則打不開(kāi)认臊。

為了覆蓋默認(rèn)行為,創(chuàng)建一個(gè)設(shè)置key值了True的字典作為參數(shù)傳入:

NSDictionary *options = @{UIApplicationOpenURLOptionUniversalLinksOnly : @YES};

[application openURL:URL options:options completionHandler:nil];

以上面示例锄奢,如果我設(shè)置它為true并打開(kāi)URL:https://twitter.com/kharrison 時(shí), 如果我并沒(méi)有安裝Twitter app那它就會(huì)失敗失晴,同時(shí)會(huì)調(diào)用safari來(lái)打開(kāi)這個(gè)鏈接。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末拘央,一起剝皮案震驚了整個(gè)濱河市涂屁,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌灰伟,老刑警劉巖胯陋,帶你破解...
    沈念sama閱讀 218,755評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異袱箱,居然都是意外死亡遏乔,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,305評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén)发笔,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)盟萨,“玉大人,你說(shuō)我怎么就攤上這事了讨∧砑ぃ” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,138評(píng)論 0 355
  • 文/不壞的土叔 我叫張陵前计,是天一觀的道長(zhǎng)胞谭。 經(jīng)常有香客問(wèn)我,道長(zhǎng)男杈,這世上最難降的妖魔是什么丈屹? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,791評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮伶棒,結(jié)果婚禮上旺垒,老公的妹妹穿的比我還像新娘。我一直安慰自己肤无,他們只是感情好先蒋,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,794評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著宛渐,像睡著了一般竞漾。 火紅的嫁衣襯著肌膚如雪眯搭。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,631評(píng)論 1 305
  • 那天业岁,我揣著相機(jī)與錄音鳞仙,去河邊找鬼。 笑死叨襟,一個(gè)胖子當(dāng)著我的面吹牛繁扎,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播糊闽,決...
    沈念sama閱讀 40,362評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼梳玫,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了右犹?” 一聲冷哼從身側(cè)響起提澎,我...
    開(kāi)封第一講書(shū)人閱讀 39,264評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎念链,沒(méi)想到半個(gè)月后盼忌,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,724評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡掂墓,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,900評(píng)論 3 336
  • 正文 我和宋清朗相戀三年谦纱,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片君编。...
    茶點(diǎn)故事閱讀 40,040評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡跨嘉,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出吃嘿,到底是詐尸還是另有隱情祠乃,我是刑警寧澤,帶...
    沈念sama閱讀 35,742評(píng)論 5 346
  • 正文 年R本政府宣布兑燥,位于F島的核電站亮瓷,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏降瞳。R本人自食惡果不足惜嘱支,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,364評(píng)論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望力崇。 院中可真熱鬧斗塘,春花似錦、人聲如沸亮靴。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,944評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)茧吊。三九已至贞岭,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間搓侄,已是汗流浹背瞄桨。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,060評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留讶踪,地道東北人芯侥。 一個(gè)月前我還...
    沈念sama閱讀 48,247評(píng)論 3 371
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像乳讥,于是被迫代替她去往敵國(guó)和親柱查。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,979評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容