iPhone5かどうかを、画面サイズで判別する方法

iPhoneかiPadかと画面の高さで判別します。


アプリをiPhone5に対応させるには?

iPhone5のRetina (4-inch)スクリーンに対応させる為にすべき事は
基本的には起動画面を用意してプロジェクトに追加するだけでいいようです。

名前は”Default-568h@2x.png”で
サイズは1136 x 640です。

単純な画面構成の場合はこれだけで対応できました。
複雑な場合はAuto Layoutを使うといいようです。

画面の大きさを判別するやり方でもできそうです。
iPhone5かどうかを、画面サイズで判別する方法


参考
What we need to support iPhone 5 screen?
iPhone5の4インチディスプレイで、既存のアプリを表示するとどうなるか?


オープンソースソフトウェアのライセンスの種類について

UIKitに用意されていないUIを使いたい時や、iOS SDKに用意されていないその他の機能を使いたい時などにオープンソースのソフトウェアを使うことがあると思います。

それぞれのオープンソースソフトウェアにはライセンスが指定されていて、そのライセンスの条件を満たした状態でオープンソースソフトウェア使う必要があります。

主なライセンスについて書いていきます。


GPL(GNU General Public License)


使用例

Linuxなど、世界で広く使われているライセンスです

1、無保証で、著作権の表示義務がある。

GPLライセンスのソフトウェアを使用した結果、いかなる損害が発生しても、責任は自分で負う必要があります。
また、著作権が表示された部分をそのままにしておく必要があります。

2、複製したり、改造したものを有償で販売したりできる。

GPLライセンスのソフトウェアを複製して改造して公開したり、販売したりすることは許されています。

3、制作物も自動的にGPLライセンスになる。

GPLライセンスのソフトウェアを使った場合、制作物も自動的にGPLライセンスになります。
制作物のライセンスを変更して独占的に販売することはできません。

GNU 一般公衆利用許諾契約書


New BSD License – 修正BSDライセンス


使用例

FreeBSD等のBSD系OS、PostgreSQL等のDBMSなど

条項

・著作権表示
・ライセンス条文(受け取った物と同じ著作権表示と許諾条件)
・無保証
の三点をドキュメント等に記載すれば、「BSDライセンスのソースコードを複製したり変更したりしたプログラム」を再配布する際に、組み込み後のソースコードを非公開にでき、ソースコードを受け取った時と異なる条件で配布することができます。

緩いライセンス形態となっており、商用のソフトウェアとして配布することができます。

BSDライセンス


MITライセンス(X11 License、MIT X License)

BSDライセンスを原型に作られたBSDスタイルのライセンスの一つであり、修正BSDライセンスとほぼ同等の条件になっています。

条項

・著作権表示を残す
・無保障

The MIT License


Apache Software License

BSDライセンスを原型に作られたBSDスタイルのライセンスの一つである。

条項

Apache Licenseのコードの使用していることを記述する
著作権表示と免責事項表示の保持する

Apache License, Version 2.0



CCライセンス(クリエイティブ・コモンズ、Creative Commons)

著作物全般を対象としたライセンスで、条項は4項目あり、「表示」を採用することが必須条件となっています。

「改変禁止」と「継承」は同時に採用できないので、
表示(CC BY)
表示-改変禁止(CC BY-ND)
表示-継承(CC BY-SA)
表示-非営利(CC BY-NC)
表示-非営利-改変禁止(CC BY-NC-ND)
表示-非営利-継承(CC BY-NC-SA)
の6通りの組み合わせから選択されます。

表示 (Attribution, BY)

著作権者を明記する必要があります。

非営利 (Noncommercial, NC)

営利目的で利用してはいけません。

改変禁止 (No Derivative Works, ND)

改変・変形・加工は禁止されています。

継承 (Share Alike, SA)

CCライセンスが付与された作品を、改変・変形・加工した場合は、元になった作品のライセンスを継承させた上で頒布することができます。


iOS向けのオープンソースのUIが探せる「Cocoa Controls」

iOS向けのオープンソースのUIが探せる「Cocoa Controls」というサイトが便利なので紹介します。

カレンダー、facebook風のメニュー、パスコード画面
などのUIはUIKitに用意されておらず、
自分でコードを書いてUIを作ることになります。
しかし一から作るのは、なかなか大変だと思います。

そんな時はまずCocoa Controlsで探してみましょう。
数百種類ものUIが紹介されています。

cocoa controls

それぞれライセンスの種類が違うので
ライセンスをよく確認してから使わせてもらいましょう。


UIViewの角を丸くする方法

UIViewの角を丸くする方法について書きます。

まずは、QuartzCore Frameworkを追加します。
XCodeのプロジェクト -> TARGETS -> Build Phasesで
Link Binary with Librariesを展開して
+ボタンを押して「QuartzCore.Framework」を検索して追加します。


次に、この方法を使うクラスの.hファイルで
QuartzCore/QuartzCore.hをインポートします


これで角を丸くすることができるようになりました。

角を丸くしたいUIViewが「view」という名前の場合の例は以下のようになります。


iOS5以降で簡単に使える4種類のUIAlertView

iOS5.0から「alertViewStyle」というプロパティが追加されたので、
4種類のアラートを簡単に表示できるようになりました。



「setAlertViewStyle:」の引数に下記の4種類のどれかを指定します。
UIAlertViewStyleDefault
UIAlertViewStyleSecureTextInput
UIAlertViewStylePlainTextInput
UIAlertViewStyleLoginAndPasswordInput


Interface Builder(Storyboard)を使わずにToolBarを利用する方法

Interface Builder(Storyboard)を使わずに、ToolBarを表示させてみます。
viewDidLoad部分に以下のコードを書きます。


Interface Builder(Storyboard)を使わずにTabBarを利用する方法

Interface Builder(Storyboard)を使わずに
TabBarを利用するにはAppDelegate.hとAppDelegate.mにコードを記述します。

▼AppDelegate.h



▼AppDelegate.m



9〜11行目の個別ページ生成部分と、15行目のTabBar生成部分を変更すれば、タブを減らしたり増やしたりすることができます。


UINavigationBarの背景に画像を指定する方法

UINavigationBarの背景に画像を指定する方法を紹介します。
アプリに個性を出したい場合なんかにためしてみるといいかもしれません。

UINavigationBarにUIImageViewをinsertSubviewして実現します



Interface Builder (Storyboard) を使わずにUIPickerViewを使う方法

Interface Builderを使わずに
UIPickerViewを使う方法を紹介します

▼MyPickerViewController.h
<UIPickerViewDelegate, UIPickerViewDataSource>を指定します。




▼MyPickerViewController.m
dataSourse/delegate、列数/行数を指定します。