昨天介紹了 Storyboard 版的 AutoFill,今天要介紹如何改用 Xib 去呈現。
p.s 如果忘記專案怎麼建成 xib 檔的,可以參考 這篇文章
一樣在 CredentialProvider 的檔案夾裡新增 XIB 檔
成功後會發現有紅色的報錯
在 swift 裡 import AuthenticationServices
,這樣就不會報錯了
建 TableViewCell 的 XIB 檔
記得在 MainViewController 的 viewDidLoad 裡註冊 xib
Main Interface 的部分
記得刪除裡面的選項
Info.plist 的部分
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>NSExtension</key>
<dict>
<key>NSExtensionMainStoryboard</key>
<string>MainInterface</string>
<key>NSExtensionPointIdentifier</key>
<string>com.apple.authentication-services-credential-provider-ui</string>
</dict>
</dict>
</plist>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>NSExtension</key>
<dict>
<key>NSExtensionPointIdentifier</key>
<string>com.apple.authentication-services-credential-provider-ui</string>
<key>NSExtensionPrincipalClass</key>
<string>$(PRODUCT_MODULE_NAME).MainASCredentialProviderViewController</string>
</dict>
</dict>
</plist>
若要改用 xib 呈現,要將 NSExtensionMainStoryboard 這個 Row 刪掉
在 Information Property List 裡的 NSExtension 加入 NSExtensionPrincipalClass
Type 給 String
Value 給$(PRODUCT_MODULE_NAME).要呈現畫面的檔案名稱
大功告成,這樣就完成用 Xib 去呈現 AutoFill 的畫面了,明天將會介紹如何製作 勾選自己的 Demo 作為自動填寫密碼時所跳出的畫面 。