2010年12月20日 過去Blog
今回は、UITabBar UITabBarItem の使い方についてです。 UITabBar を使い、UITabBarItems や view を追加する方法です。

1. UITabBar テンプレート を使ってプロジェクトを作成

まず、タイトルの通りに XCode の UITabBar テンプレートを使って、プロジェクトを作成します。
863-1 その状態で、ビルド&実行してみると以下の画像のようになります。 863-2

2. Interface Builderを起動し UITabBar items を追加します。

UITabBarItems を追加するには、単純に、ライブラリから、UITabBar 上にドラッグするだけです。追加したitemの名前は「item」となっているので、「third」など、適当に変更してください。 追加したitemには、itemがクリックされた時に表示するviewの名前を特定する必要があります。 まず、Interface Builder を起動するために、MainWindow.xib をダブルクリックします。 Tools > atributes inspector を開き、“Nib Name” と書かれた項目に、view を指定します。これがクリックされた時にロードされ、表示されます。今回は、テンプレートに沿って、”ThirdView” とします。 これだけでは、”ThirdView” は、表示されません。当たり前ですが、まだ、ThirdView.xibを作成していないので。。。 新しくview を追加するには、Interface Builder から File > New をクリックし、viewを追加します。 863-3上記のような画面が出た後、新しく真っ白の viewが表示されると思いますので、適当に背景色などを変更して、”ThirdView”として保存します。 863-4 保存の途中で以下のような画面が出てきますので、viewを追加するプロジェクト名の横のチェックボックスをチェックして、「Add」ボタンで追加します。 863-5 これで、”ThirdView”は、完成ですが、このままXCode上からビルド&実行し、最初に設定した「third」のタブitemをクリックすると以下のようなエラーが発生します。

reason: ‘-[UIViewController _loadViewFromNibNamed:bundle:] loaded the “ThirdView” nib but the view outlet was not set.

これは、「”ThirdView”をロードしたけど、viewアウトレットが設定されていないよ!」ということなので、先ほど作成した”ThirdView.xib”をダブルクリックし、「File’s Owner」をクリックし、Identity Inspector を開きます。表示されたinspectorの上部にある「Class」という箇所に「FirstViewController」を設定します。 この状態で File’s Owner を右クリックすると、Outlets の中に view というのがありますので、それと、File’s Owner というオブジェクトが入っているウインドウ内のview とを接続します。 ここまで出来たら、保存します。 XCode上から、ビルド&実行してみてください。以下の画像のように、3つ目のviewが表示されると思います。 863-6

この投稿へのコメント

コメントはまだありません。

コメントを残す

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます。
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

CAPTCHA


ピックアップ記事

iOS 4.2 sdkのABGroupAddMemberにバグ

2011年01月25日 過去Blog
ABAddressBookに関するアプリを勉強していたのですが、ABGroupAddMember が機能せず、困っていました。 日本語サイトでは情報が見当たらなかったので、いろいろ海外のサイトを調べていると同じように困っている方が大勢いるようでした。 …
「iOS 4.2 sdkのABGroupAddMemberにバグ」をはてなブックマークに追加

外部SQLiteデータベースを更新した場合

2010年12月09日 過去Blog
アプリケーションの外部でデータベースを変更した場合、プログラム内のデータベースを入れ替えても反映されないので、そういう場合は、既にシミュレータまたは、デバイスにインストールされている該当アプリを一度アンインストールしてから、再度ビルド&実行することで、データベースも最新のものが反映される模様。 http://oknamulti.by/…
「外部SQLiteデータベースを更新した場合」をはてなブックマークに追加

Zencart : セッションについて

2009年11月20日 過去Blog
Zencartのセッションについてですが、以下の環境に該当する場合は、少々対応が必要なようです。 サーバが専用SSLではなく、共用のSSLを利用している。 カスタマイズの際にURLをそのまま張り付けて使用している。 静的htmlへのリンクがZencartのサイト内に含まれている。 私の管理するZencartのサイトは上記の全てに当てはまっていました・・・orz 解決策の前にZencartのセッションの基本的な仕組みについて説明したいと思います。 …
「Zencart : セッションについて」をはてなブックマークに追加

UITableView + UITexeField

2011年04月29日 過去Blog
TableView cellにTextFieldを表示させる 試してませんが、UITextView,UILabelなども同様の方法でいける気がします。 http://d.hatena.ne.jp/lynk/20090128#1233143275 http://code.google.com/p/iphone-codes/source/browse/EditableCell/?r=0a9142…
「UITableView + UITexeField」をはてなブックマークに追加
© graffiti on the web . All rights reserved. WordPress Theme by comfy