問題タブ [abpersonviewcontroller]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - PeoplePickerNavigationController にプッシュされたときに ABPersonViewController がデータを取得しない
PeoplePickerNavigationController に ABPersonVIewController を表示しようとしています。しかし、iOS 8 では動作しません。使用したコードは次のとおりです。
何が原因で、どうすればこの問題を回避できますか。
ios8 - iOS8 のバグ: ABPersonViewController でプロパティが表示されず、[戻る] ボタンが表示されない
次のコードは iOS7 では正しく動作しますが、iOS8 では動作しません (変数recordID
が正しく設定されています)。
iOS8 のバグ:
- をに
allowsEditing
設定するYES
と、連絡先は 表示されますが、名前のみが表示されます。ナビゲーション バーには、左側に [戻る] ボタン ("Addresses" という名前)、右側に編集ボタンが表示されます。編集ボタンを押すと、 name 以外のすべてのフィールドが空の連絡先が表示され、編集ボタンが完了ボタンとして表示されます。前に編集せずにこの完了ボタンを押すと、連絡先に関するすべての情報が表示されます。 - をに
allowsEditing
設定するNO
と、戻るボタンが表示されなくなり、画面を離れることができなくなります。
誰にも回避策はありますか?
アップデート:
私は今、問題1がシミュレーターでのみ発生することに気付きましたが、常に私のデバイスで発生します。
ios - ABPeoplePickerNavigationController 検索バーの色が変更されない
連絡先が選択されたときに、検索バーのオレンジ色とバーの色合いを白に変更しようとしています。
私が何をしようとしても、何も変わらず、このように動かなくなります(戻るボタンは白ではありません)。
AppDelegate で:
ビューをポップするとき:
ビューは問題ありません:
ビューが正しくありません:
ビューが正しくありません:
ios - iOS8 で ABPersonViewController を ABPeoplePickerNavigationController にプッシュする
ピープル ピッカーの紹介
iOS 7 での ABPeoplePickerNavigationControllerDelegate の実装
ここまでは順調ですね。Person View Controller は期待どおりに表示されます。iOS7 メソッドは値を返します。ピープル ピッカーが開いたままであることを確認するために、NOを返すことができます。iOS8 では、上記のデリゲート メソッドは廃止され、新しいメソッドを実装する必要があります。
Person View Controller は People Picker にプッシュされますが、ほんの一瞬で People Picker が閉じられます (Person View Controller と一緒に)。
iOS8 で People Picker が消えないようにする方法はありますか? 他の提案はありますか?
ios - Ios 8: アプリがバックグラウンドになったときに宛先アプリを決定しますか?
アプリの openURL メソッドをオーバーライドして、いつアプリを から離れようとしているのかを知ることができます。ABPersonViewController
その理由は、そのクラスがユーザーに提示するすべてのアクションについてデリゲートに通知しないためです。それができれば、すべてうまくいくでしょう。
これは iOS 7 では問題なく動作しましたが、iOS 8.1 でこれを試してみると、 がすべてのアクションを必要としてABPersonViewController
いないことがわかりました。openURL
たとえば、電話番号をタップすると、電話をかけずに電話アプリにアクセスできopenURL
ます。一方、SMS バブルをタップすると、が呼び出されますopenURL
。
Facebook プロファイル エントリ (URL "fb://profile/1234567890") をタップすると、ログには、"Launch Services" にスキーム "fb" の登録済みハンドラーがないことが示されます。そのため、Launch Services への呼び出しが openURL への呼び出しに取って代わったと想定しています。それが「プライベート API」であるということ以外、これ以上のことはわかりません。
これらの呼び出しを検出する方法はありますか? または、アプリの内部で「tel」や「mailto」などの既知のスキームのハンドラーをオーバーライドすることは可能ですか? 基本的に、いつアプリを終了し、どこに行くのかを知る必要があります。