たけぞうBLOG

iOS,XCode,Cameraなど

iOSアプリ開発 Xcode6

Xcode6のView Debugging使い方

投稿日:9月 1, 2014 更新日:

View Debuggingとは?

Xcode6の新機能で、iOSアプリ開発時のview階層を視覚的に確認できる機能のようです。

これまでview階層を視覚的に表示する手段がなかったので、このようなデバッグ方法はわかりやすいですし、自分が開発しているview階層を理解しながら作業できるのは品質を高める上でも非常に有益だと思います。

実際に使ってみます

必要なもの

  • Mac
  • XCode6(現時点ではbeta版)

使い方

使い方は非常に簡単です。適当なXcodeプロジェクトを作り、シミュレータや実機でアプリを起動している状態にします。

\"図1\"

次に、図1のXcode6の画面下部にあるView Debuggingボタンをクリックします。

そうすると、単一画面のStoryBoardのような画面に切り替わります。

\"vd02\"

この状態ではまだView階層がよくわからないですね。

次に、この画面上にポインタを置いた状態で、左ボタンをクリックしながらポインタを右や左に動かしてみてください。

\"vd03\"

するとこのような状態になるはずです。この時点ですでにViewの階層構造がわかりやすくなりました。

各オブジェクトの状態を確認

\"vd04\"

次にNavigation areaのUIWindowをクリックしてみます。

すると、UIWindow配下にあるUIオブジェクトが表示されます。

UIButtonなどを選択すると、Inspector paneにそのオブジェクトの詳細な状態が表示されます。

\"vd06\"

Viewの間隔を調整

このサンプルではシンプルなVIew階層ですが、大量のView階層をデバッグする場合に作業を行いやすくするための調節する機能があります。

\"vd07\"

上の図のようにスライダーを動かしながら、Viewの表示間隔を調整することができます。

\"vd08\"

表示するViewを調整

次に、余計なVIewを非表示にするための手順です。

\"vd09\"

実際に使ってみるのが一番わかりやすいと思いますが、階層表示されている親階層側と、子階層側それぞれの表示場所を調整することで、自分が確認したいビュー階層だけを表示することができます。

例えば、親階層側だけをデバッグしたいのであれば、左側のスライダーは左いっぱいにしておき、右側のスライダーを左に寄せます。

\"親階層側だけを表示\" \"子階層側だけを表示\"

WWDC2014のビデオを見ましょう

WWDC2014の資料に説明や実際のデモ動画があります。

https://developer.apple.com/videos/enterprise/#8

見ていない方はぜひ一度確認してください。

-iOSアプリ開発, Xcode6
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

iPhoneMultichannelMixerTestの起動時処理を整理

http://developer.apple.com/library/ios/#samplecode/iPhoneMultichannelMixerTest/Introduction/Intro.ht …

SwiftのiOSプロジェクトにGoogle Analytics Services SDKを設定する方法

現時点(2014/09/16)でGoogle Analytics Services SDKのSwift版はリリースされていませんが、これから説明する手順で動作確認できたので共有します。

[Swift]WatchKitで”error: WatchKit Extension doesn’t contain any WatchKit apps whose bundle identifiers match 〜”と怒られた

WatchKit対応のアプリをストア公開用にビルドする際、以下のように怒られたので対処メモです。

Xcode4ショートカット

よく使いそうなものだけピックアップ
no image

かんたん着信音

このページはかんたん着信音アプリのサポートページです。 iOSのアップデート方法について 本アプリを動作させるためにはiPhoneのOSバージョンがiOS4.2以上である必要があります。iOSのアップ …

プロフィール


1972年神奈川県生まれ。ソフトウェアエンジニアとして生きています。最近はクライアントアプリからサーバーサイドまで幅広くやってます。