Unityで横画面のフルスクリーンのゲームを作っているのですが、画面端からスワイプすると通知バーが出てしまいゲームの操作が阻害されてしまいます。
幾つかのゲームでは、画面端を2回スワイプしないと通知センター(画面上端から下にスワイプ時)が出ないようになっています。
(2回スワイプした時に矢印がでます。)
これの実装方法が知りたいです。
参考にしたゲーム
- Brain Dots(http://translimit.co.jp/services/braindots/)
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答1件
0
ベストアンサー
Unity Issue Trackerによると、
In a full-screen app (iOS), the Notification Center should require two drags, one would show a triangle which you can then drag to show the center. In iOS11 case, the Notification Center shows from a single drag.
The Same behavior is noticed with Control Center.Steps:
- Open attached project ("NotificationCrntre.zip")
- Build and Run on iOS11 device
- Try to open Notification Center (swipe down from the top) or Control Center (swipe up from the bottom)
Expected: in order to open Notification Center/Control Center, 2 swipes are needed.
Actual: only one swipe is enough.Reproduced with: 2018.1.0a2, 2017.3.0b7, 2017.2.0p1, 2017.1.2p2.
Tested with: iPhone 6S iOS11.0, Xcode 9.0.
WON'T FIX: This is an intended behavior on iOS11.
フルスクリーンアプリ(iOS)において、通知センターは2回ドラッグで表示(1回目で三角を表示、それをドラッグで通知センター表示)されるべきです。iOS 11の場合、通知センターが1回のドラッグで表示されてしまいます。コントロールセンターも同じ挙動をします。
手順:
1. 添付のプロジェクトを開く("NotificationCrntre.zip")
2. ビルドしiOS 11端末で実行する
3. 通知センター(上端から下へスワイプ)またはコントロールセンター(下端から上へスワイプ)を開こうとする
期待する動作: 通知/コントロールセンター表示に2回スワイプが必要。
実際の動作: 1回で表示される。
再現するバージョン: 2018.1.0a2、2017.3.0b7、2017.2.0p1、2017.1.2p2。
テストした環境: iPhone 6S iOS11.0、Xcode 9.0。
修正されません: これはiOS 11における意図された挙動です。
とのことで、この挙動を回避することはできなさそうに思えます。画面端からのスワイプが起こらないようなゲームデザインに変更してやるしかないかもしれません...
あいにくiOS 11の動くデバイスを持っておらず、私自身では確認できなかったのですが、「Brain Dots」の場合は2回スワイプ方式にできているということでしょうか?
[追記]
Issue Trackerにあんなことが書いてありましたが、取り急ぎUnityアプリをiPhoneX対応する - Qiitaによると「Project Settings」→「Player」の「Other Settings」に「Defer system gestures on edges」という項目があるようです。
リファレンス によれば、
Defer system gestures until the second swipe on specific edges.
On iPhone X the home button is implemented as a system gesture (swipe up from the lower edge of the screen). Other gestures are implemented as swipes from other screen edges. Note that this may interfere with games that use swipes as an interaction method. This setting specifies which screen edge gestures the system defers to the second swipe. The first swipe is ignored and provides a way to reduce unwanted interactions with the App. Note that iOS Human interface guidelines do not recommend enabling this behavior as it might confuse users.
指定されたエッジにおいて、2回目のスワイプまでシステムジェスチャーを遅延させます。
iPhone Xにおいてホームボタンはシステムジェスチャーとして実装されています(画面下端から上にスワイプ)。その他のジェスチャーは他のエッジからのスワイプとして実装されます。操作方法としてスワイプを用いるゲームはこれと干渉しうることにご注意ください。この設定は、システムジェスチャーを2回目のスワイプまで遅延させるエッジを指定します。1回目のスワイプは無視され、アプリにおける不要なインタラクションを抑止します。iOSヒューマンインターフェースガイドラインにおいては、ユーザを混乱させるおそれがあるため、この動作は推奨されていないことにご注意ください。
とのことで、まさしくこれが目的の設定項目であるように思います。実機はないためシミュレータを用いましたが、これをオンにすると、確かに1回目のスワイプで山形マークの付いたタブが現れ、2回目のスワイプで通知センターが現れるようになりました。ご質問者さんの環境ではいかがでしょうか?
投稿2017/12/24 21:18
編集2017/12/25 18:22総合スコア10807
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/12/25 14:27
2017/12/25 22:45 編集
2017/12/27 09:09