Apple ドキュメント

 

Apple ドキュメントへのリンクです。

Apple 日本語ドキュメント一覧

以下は上記ドキュメント一覧からの抜粋です。

<初心者向け>

「iOS ヒューマンインターフェイス ガイドライン」
 ⇒iOSアプリケーション用に最高のユーザインターフェイスとユーザ体験を設計する上で役立つガイドラインと原則について説明。

「初めての iOS アプリケーション」
 ⇒Xcodeを使用した新規プロジェクト作成方法についてのチュートリアルになっています。

「2つ目のiOSアプリケーション:ストーリーボード」
 ⇒ストーリーボードを使ってナビゲーションベースのアプ リケーションを開発する手順が解説されています。チュートリアルになっています。

「3つ目のiOSアプリケーション:iCloud」
 ⇒iCloudドキュメントストレージAPIが紹介されています。チュートリアルになっています。

「Cocoa向けコーディン グ ガイドライン」
 ⇒Cocoaフレームワークの記述に使用する命名規約(メソッド名、プロパティ、データ型等)や、フレームワーク開発者のためのプログラミング技法などが説明されています。

(さらに…)

エミュレータからインターネット接続できない場合の対処方法

 

※本記事は、旧ブログからの再掲です。

Androidエミュレータからインターネット接続ができない場合の対処方法です。

これまでのところ、以下2点の場合にインターネット接続ができないことがありました。

(1)DNS設定が原因の場合
(2)SSL接続時の証明書が原因の場合

 

emulator_internet_err_1


 
(1)DNS設定が原因の場合

ネットで調べてみたところ、何らかの要因でDNSサーバーにアクセスできなくなっているとのことでした。
この場合には、DNSサーバーを設定すれば良いようです。 (さらに…)

tableViewのセクションヘッダの高さ

 

※本記事は、旧ブログからの再掲です。

ViewControllerに複数の異なるビューを配置し、その1つにtableViewを配置したところ、思った通りに描画されなかった時の備忘録です。

tableview_header_1

上のImageViewとの間隔は10ptに設定してあるのに、それ以上の間隔で描画され、テーブルセルは5個なのでその分の高さを設定してあるのに、セル4までしか表示されていません。
セルの上に何かありそうなので、背景に色を付けてみました。 (さらに…)

iOS6.0以降の回転制御について

 

※本記事は、旧ブログからの再掲です。

UINavigationControllerとUITabBarControllerの両方を使用している場合の回転制御についてです。
※iOS6.0以降

iOS6.0からshouldAutorotateToInterfaceOrientation:メソッドがdeprecatedとなり、
新しく下記3つのメソッドが追加されました。
・shouldAutorotate
・supportedInterfaceOrientations
・preferredInterfaceOrientationForPresentation

画面回転を検出すると、まずshouldAutorotateメソッドが呼ばれ、
回転に対応する場合にはYES、しない場合にはNOを返却します。
shouldAutorotateでYESの場合に、supportedInterfaceOrientationsメソッドが呼ばれ、どの向きに対応するかを返却します。
preferredInterfaceOrientationForPresentationメソッドでは、複数の向きに対応している場合に初期表示画面の向きを指定します。 (さらに…)

Analyze実行時のDead storeメッセージ

 

※本記事は、旧ブログからの再掲です。

XcodeでAnalyzeを実行したら、下記の警告メッセージが出力されました。

“Value stored to ‘xxx’ during its initialization is never read”

調べたら、初期化した値が参照されていないことを指摘するメッセージのようです。

指摘されたのは以下のコードです。

NSMutableDictionary *dic = [NSMutableDictionary dictionary]; ←←この行で警告
dic = [_array objectAtIndex:index];

1行目で空のディクショナリを生成し変数dicに代入していますが、
2行目では別のオブジェクトを代入しています。
1行目で生成したディクショナリは以後使われません。
そのため、Analyze実行時に1行目の代入が無駄な処理として指摘されたようです。

対処としては、

NSMutableDictionary *dic = [_array objectAtIndex:index];

もしくは

NSMutableDictionary *dic; (or NSMutableDictionary *dic = nil;)
dic = [_array objectAtIndex:index];

とすることで、警告メッセージは出力されなくなりました。