2017-04-19 3 views
0

私はワークアウトトラッキングアプリを作成しています。表示コントローラを切り替えるためにWKInterfaceController.reloadRootControllers(withNames:contexts:)を使用して、awake(withContext:)の一部の要素を非表示にして一部のラベルのテキストを変更する。ここでは問題はありませんが、表示が正しく読み込まれないことがあり、テキストの一部を切り取って縦に少し伸ばして表示されるようです。Aの左側の部分の下に表示されるようにAと私はDispatchQueue.main.async { ... }を経由して、コードを呼び出すことによって、ビューへの更新を遅らせる試みたApple Watchインターフェイスが変わってクロップ/シフトしました

enter image description here enter image description here

:欠落しているだけでなく、次の下部にされています...と緑色のボタンが中央にされていませんしかしそれは残念なことに何もしません。問題を解決する唯一の方法はtermiですアプリケーションを起動して再起動しますが、これはウォッチからはできませんので、アンインストールして再インストールする必要があります。ルートコントローラーを再読み込みしてもヘルプが表示されません(2番目のスクリーンショットは再読み込み後です)。誰かがなぜこれが起こっているのか考えていますか?

Project on GitHubこの問題のコントローラは、ExecuteWorkoutIC.swiftExecuteWorkoutInterfaceControllerです。

答えて

0

ストーリーボードのレイアウトを確認して、WKInterfaceController.reloadRootControllersを使用せず、エレメントを隠して表示するメソッドを用意してください。

+0

インターフェイスコントローラーの階層を変更する必要があるため、ルートコントローラーを再読み込みする必要がありますが、クラッシュ後にアプリケーションを再起動した後にルートコントローラーを再読み込みする –

関連する問題