アプリでユーザーに「利用規約」を表示するために使用するのに最適なUIオブジェクトは何ですか?ビデオとデータをサーバーにアップロードしようとしていることをユーザーに通知し、ユーザーがそのことを認識し、受け入れていることを確認したいと思います。
を使用することを考えUIActionSheet
ましたが、多くのテキストを表示する必要があるため、おそらく適切ではありません。
アプリでユーザーに「利用規約」を表示するために使用するのに最適なUIオブジェクトは何ですか?ビデオとデータをサーバーにアップロードしようとしていることをユーザーに通知し、ユーザーがそのことを認識し、受け入れていることを確認したいと思います。
を使用することを考えUIActionSheet
ましたが、多くのテキストを表示する必要があるため、おそらく適切ではありません。
私はと行きUIWebView
ます。結局のところ、それはゴージャスにフォーマットされたHTMLを表示することができます。私が作成したアプリの1つで、Accept/DenyボタンUIViewController
をロードする特別なサブクラスを作成しました。UIWebView
ボーナスとして、サーバーにEULAを保持し、UIWebView
そのURLでロードすることができます。
スクロールビューを備えたモーダルビューコントローラを紹介します。そのスクロールビュー内に、複数行のUILabelまたはUITextView(編集を無効にした状態)を配置します。UILabelまたはUITextViewはスクロールビューを埋めてはなりません。スクロールビューの下部に、[承認]ボタンと[キャンセル]ボタンを配置します。ここでの効果は、ユーザーにはテキストの本文が表示されることですが、画面を超えて進むには、ボタンに到達するために最後までスクロールする必要があります。これは、iTunesの利用規約が更新されたときにAppleが行うことと似ており、アプリをダウンロードする前に、新しい規約に同意する必要があります。
利用規約が非常に短い場合、つまり画面が1つ以下の場合は、スクロールビューさえ必要ない場合があります。
ユーザーがサーバーにデータをアップロードするポイントに初めて到達したときに、このモーダルを提示します。次に、ユーザーが同意したら、このデータをNSUserDefaultsまたはローカルの.plistファイルに保存します。これにより、ユーザーが将来この時点に到達したときに、ユーザーが以前に契約に同意したことを確認し、再度提示しないようにすることができます。 。
ユーザーが利用規約への同意を拒否し、キャンセルを押した場合は、モーダルビューコントローラーを非表示にしますが、アプリでそれ以上進めないようにします。続行しようとする場合は、利用規約をもう一度提示してください。
2つの状態のuiButtonを使用し、選択されていない空のチェックボックスと、選択されたチェックボックスとして他の状態を、契約条件のラベルとともにイメージします。利用規約はuiwebviewに表示できます。Webviewにロードされるインバンドル/ローカルhtmlファイルまたはリモートファイルの同じ利用規約。