一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - IOS - iOS13 適配和Xcode11.0踩坑小結

iOS13 適配和Xcode11.0踩坑小結

2021-05-27 17:49Code.Rookie IOS

這篇文章主要介紹了iOS13 適配和Xcode11.0踩坑小結,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

ios13中presentviewcontroller的問題

更新了xcode11.0 beta之后,在ios13中運行代碼發現presentviewcontroller和之前彈出的樣式不一樣。

iOS13 適配和Xcode11.0踩坑小結

會出現這種情況是主要是因為我們之前對uiviewcontroller里面的一個屬性,即modalpresentationstyle(該屬性是控制器在模態視圖時將要使用的樣式)沒有設置需要的類型。在ios13中modalpresentationstyle的默認改為uimodalpresentationautomatic,而在之前默認是uimodalpresentationfullscreen

?
1
2
3
4
5
6
/*
 defines the presentation style that will be used for this view controller when it is presented modally. set this property on the view controller to be presented, not the presenter.
 if this property has been set to uimodalpresentationautomatic, reading it will always return a concrete presentation style. by default uiviewcontroller resolves uimodalpresentationautomatic to uimodalpresentationpagesheet, but other system-provided view controllers may resolve uimodalpresentationautomatic to other concrete presentation styles.
 defaults to uimodalpresentationautomatic on ios starting in ios 13.0, and uimodalpresentationfullscreen on previous versions. defaults to uimodalpresentationfullscreen on all other platforms.
 */
@property(nonatomic,assign) uimodalpresentationstyle modalpresentationstyle api_available(ios(3.2));

要改會原來模態視圖樣式,我們只需要把uimodalpresentationstyle設置為uimodalpresentationfullscreen即可。

?
1
2
3
4
5
viewcontroller *vc = [[viewcontroller alloc] init];
vc.title = @"presentvc";
uinavigationcontroller *nav = [[uinavigationcontroller alloc] initwithrootviewcontroller:vc];
nav.modalpresentationstyle = uimodalpresentationfullscreen;
[self.window.rootviewcontroller presentviewcontroller:nav animated:yes completion:nil];

iOS13 適配和Xcode11.0踩坑小結

私有kvc

在使用ios 13運行項目時突然app就crash掉了。定位到的問題是在設置uitextfieldplaceholder也就是占位文本的顏色和字體時使用了kvc的方法:

?
1
2
[_textfield setvalue:[uicolor redcolor] forkeypath:@"_placeholderlabel.textcolor"];
[_textfield setvalue:[uifont systemfontofsize:14] forkeypath:@"_placeholderlabel.font"];

可以將其替換為

?
1
_textfield.attributedplaceholder = [[nsattributedstring alloc] initwithstring:@"姓名" attributes:@{nsfontattributename:[uifont systemfontofsize:14],nsforegroundcolorattributename:[uicolor redcolor]}];

并且只需要在初始化的時候設置attributedplaceholder即富文本的占位文本,再重新賦值依然使用placeolder直接設置文本內容,樣式不會改變。(想要這種效果的話需要在初始化attributedplaceholder時的字符串不為空)

universal link(通用鏈接)

在xcode11中配置universal link(通用鏈接)步驟:

iOS13 適配和Xcode11.0踩坑小結

在ios13之前在其他app去safari中打開universal link(通用鏈接)系統匹配域名是全匹配,而在ios13之后規則發生了變化,猜測是包含關系。比如在ios13之前,如果universal link(通用鏈接)為w.mydomain.com那么在微信或者其他app訪問www.mydomain.com然后點擊去safari打開則不會拉起相應app,而在ios13則會拉起相應app。
而在safari中輸入的鏈接則依然和ios之前一樣,只有www.mydomain.com才會提示打開相應app。

修改app名稱(修改displayname值)

  • 在xcode創建項目時默認的project.pbxproj中的所有product_name = "$(target_name)";。
  • 在xcode11.0之前如果修改displayname時只是修改info.plist中的bundle display name值,但是在xcode11.0中修改該值則會把project.pbxproj中的一個product_name改為修改后值,如果在項目中通過[nsbundle mainbundle] infodictionary]kcfbundleexecutablekey的就會有影響,并且對build settings中的packaing中的一些名稱有影響,可能還會有其他影響有待關注。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:https://www.cnblogs.com/guoshaobin/p/11167191.html

延伸 · 閱讀

精彩推薦
  • IOSiOS自定義UICollectionViewFlowLayout實現圖片瀏覽效果

    iOS自定義UICollectionViewFlowLayout實現圖片瀏覽效果

    這篇文章主要介紹了iOS自定義UICollectionViewFlowLayout實現圖片瀏覽效果的相關資料,需要的朋友可以參考下...

    jiangamh8882021-01-11
  • IOS詳解iOS中多個網絡請求的同步問題總結

    詳解iOS中多個網絡請求的同步問題總結

    這篇文章主要介紹了詳解iOS中多個網絡請求的同步問題總結,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧...

    liang199111312021-03-15
  • IOSiOS中滑動控制屏幕亮度和系統音量(附加AVAudioPlayer基本用法和Masonry簡單使用)

    iOS中滑動控制屏幕亮度和系統音量(附加AVAudioPlayer基本用法和

    這篇文章主要介紹了iOS中滑動控制屏幕亮度和系統音量(附加AVAudioPlayer基本用法和Masonry簡單使用)的相關資料,需要的朋友可以參考下...

    CodingFire13652021-02-26
  • IOSiOS開發技巧之狀態欄字體顏色的設置方法

    iOS開發技巧之狀態欄字體顏色的設置方法

    有時候我們需要根據不同的背景修改狀態欄字體的顏色,下面這篇文章主要給大家介紹了關于iOS開發技巧之狀態欄字體顏色的設置方法,文中通過示例代碼...

    夢想家-mxj8922021-05-10
  • IOSiOS中MD5加密算法的介紹和使用

    iOS中MD5加密算法的介紹和使用

    MD5加密是最常用的加密方法之一,是從一段字符串中通過相應特征生成一段32位的數字字母混合碼。對輸入信息生成唯一的128位散列值(32個字符)。這篇文...

    LYSNote5432021-02-04
  • IOSiOS開發之視圖切換

    iOS開發之視圖切換

    在iOS開發中視圖的切換是很頻繁的,獨立的視圖應用在實際開發過程中并不常見,除非你的應用足夠簡單。在iOS開發中常用的視圖切換有三種,今天我們將...

    執著丶執念5282021-01-16
  • IOSiOS中UILabel實現長按復制功能實例代碼

    iOS中UILabel實現長按復制功能實例代碼

    在iOS開發過程中,有時候會用到UILabel展示的內容,那么就設計到點擊UILabel復制它上面展示的內容的功能,也就是Label長按復制功能,下面這篇文章主要給大...

    devilx12792021-04-02
  • IOSiOS實現控制屏幕常亮不變暗的方法示例

    iOS實現控制屏幕常亮不變暗的方法示例

    最近在工作中遇到了要將iOS屏幕保持常亮的需求,所以下面這篇文章主要給大家介紹了關于利用iOS如何實現控制屏幕常亮不變暗的方法,文中給出了詳細的...

    隨風13332021-04-02
主站蜘蛛池模板: 国产精品成人亚洲 | 色综合中文字幕在线亚洲 | 波多野结衣在线中文字幕 | 精品国产理论在线观看不卡 | 加勒比一本大道香蕉在线视频 | 大香人蕉免费视频75 | 欧美亚洲视频在线观看 | 涩涩屋在线观看 | 日韩精品成人 | 国产在线成人a | narutotsunade全彩雏田 | 精品牛牛影视久久精品 | 亚洲精品福利一区二区在线观看 | 91会员 | 免费国产成人高清视频网站 | 果冻传媒 天美 麻豆 | 狠狠色综合久久婷婷 | 黄瓜视频黄版 | 国产一区二区精品久 | 亚洲成年男人的天堂网 | 98在线视频噜噜噜国产 | 美女扒开屁股让我桶免费 | 亚洲高清中文字幕 | 猥琐对着美女飞机喷到脸上 | 天天色天天舔 | 36美女厕所撒尿全过程 | ass日本乱妇ass | 毛片免费在线视频 | 欧美人与禽杂交大片 | 国产精品久久久久久影院 | 色伦网| 男人都懂www深夜免费网站 | 扒开大腿狠狠挺进视频 | 高清男的插曲女的 欢迎你老狼 | 国产成人影院在线观看 | www.日日爱 | 午夜久久影院 | 色综合伊人色综合网亚洲欧洲 | 男男gaygays18中国 | 男同桌扒开女同桌胸罩喝奶 | 肉文np高h|