サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
iPhone 16
ios.ch3cooh.jp
過去にObjective-CでNSCalendarクラスとNSDateComponentsクラスを使って、以下のような現在の年度をNSNumber型で取得するメソッドがありました。このメソッドを - (NSNumber*)yearNumber { NSCalendar* gregorian = [[[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar] autorelease]; NSDateComponents* comp = [gregorian components:NSYearCalendarUnit fromDate:[NSDate date]]; return [NSNumber numberWithInteger:comp.year]; } iOS 8 SDKを使ってビルドをすると、下記のようなワー
特定の範囲の乱数を求める際には、Objective-Cと同じようにarc4random関数を使うことができます。 //0から9までの値を取得する let random = arc4random() % 10 上記のコードではarc4random関数で得た乱数の余剰を求めているため、arc4random関数では生成される乱数にやや偏りが発生してしまいます。 事前に0から9までの値が欲しいということが分かっているのであれば、arc4random_uniform関数を使うと良いでしょう。 //0から9までの値を取得する let random = arc4random_uniform(10) 例えば、String型の配列からランダムに1つ取り出す場合には以下のように書くことができます。 var titles: [String] = [ "ほげ", "ぽよ", "ぴよ", "ぷよ" ] let in
カスタムURLスキームを使用して他のアプリを起動する方法をいくつか紹介しました。 カスタムURLスキームを使って地図アプリに位置座標を渡して連携起動する - iOSアプリ開発の逆引き辞典 カスタムURLスキームを使って通話アプリに電話番号を渡して連携起動する - iOSアプリ開発の逆引き辞典 上記で紹介した方法は、呼び出し元アプリと呼び出し先アプリが異なるケースです。呼び出し元が呼び出し元のカスタムURLスキームを使っているケースはあまり知りません。 本記事では呼び出し元アプリ側にカスタムURLスキームを設定して、呼び出し元アプリがカスタムURLスキームを使って自分自身を呼び出す方法を紹介します。 使い道はあまりないかもしれませんが、カスタマイズ可能なAR機能を提供するAurasma SDKやグループチャット機能を提供するLobi SDK(旧称:nakamap SDK)を使用して、制御がア
NSString型の文字列を画像に変換します。「サイズを指定して空のUIImageオブジェクトを生成する - iOSアプリ開発の逆引き辞典」をベースとしています。 - (UIImage *)imageWithString:(NSString *)text { // 描画するサイズ CGSize size = CGSizeMake(34, 18); // ビットマップ形式のグラフィックスコンテキストの生成 // 第2引数のopaqueを`NO`にすることで背景が透明になる UIGraphicsBeginImageContextWithOptions(size, NO, 0); // 描画する文字列の情報を指定する //-------------------------------------- // 文字描画時に反映される影の指定 NSShadow *shadow = [[NSShadow
フォントを指定して、文字列が描画されるサイズを求めるのにiOS 6まではsizeWithFont:メソッドとsizeWithFont:constrainedToSize:lineBreakMode:メソッドを使っていました。iOS 7ではこれらのメソッドの使用が非推奨になっています。 - (CGSize)sizeWithFont:(UIFont *)font; - (CGSize)sizeWithFont:(UIFont *)font constrainedToSize:(CGSize)size; - (CGSize)sizeWithFont:(UIFont *)font constrainedToSize:(CGSize)size lineBreakMode:(NSLineBreakMode)lineBreakMode; ベースSDKがiOS 7.0以上になっていて、これらのメソッドを使
本記事では、UIImageオブジェクトをプログラム(コード)だけで動的に生成する方法を紹介します。 塗りつぶされた円が描画されたUIImageオブジェクトを生成する 塗りつぶされた円を描画するにはCGContextFillEllipseInRect関数を使用します。 - (UIImage *)imageFillEllipseWithColor:(UIColor *)color size:(CGSize)size { UIImage *image = nil; // ビットマップ形式のグラフィックスコンテキストの生成 UIGraphicsBeginImageContextWithOptions(size, 0.f, 0); // 現在のグラフィックスコンテキストを取得する CGContextRef context = UIGraphicsGetCurrentContext(); // 塗りつ
UIPageViewControllerを継承して必要なデリゲートを実装し終わった時点で、画面下部のPageControlが表示されてしまうのに気付かれるかと思います。 このPageControlは、UIPageViewControllerのTransition Styleが UIPageViewControllerTransitionStyleScrollになっており、かつ以下の2つのデリゲートメソッドを実装している時に表示されます。 これらのデリゲートメソッドを削除するか - (NSInteger)presentationCountForPageViewController:(UIPageViewController *)pageViewController { return [self.pageTitles count]; } - (NSInteger)presentationInd
本記事では、すでに画像(UIImageオブジェクト)が複数枚用意されていて、それらのすべての画像を合成させてみましょう。 ここでは例として「わーっ」と描かれたセリフ画像と「滑っているネコ」が描かれている画像を1つの画像として合成させてみます。 - (UIImage *)compositeImages:(NSArray *)array size:(CGSize)size { UIImage *image = nil; // ビットマップ形式のグラフィックスコンテキストの生成 UIGraphicsBeginImageContextWithOptions(size, 0.f, 0); // 塗りつぶす領域を決める CGRect rect = CGRectMake(0, 0, size.width, size.height); for (id item in array) { if (![item
iPadだったらこうするiPhoneだったらこうする。はたまた、iPhone 4は良いがiPhone 3GとiPod touch 2Gはメモリが少ないのでこの機能をドロップするなど、端末のモデルによってあれしたいこれしたいという事が多々あると思います。 端末情報を取得する方法についてご紹介したいと思います。 iOSのシステムバージョンを取得する iOSのシステムバージョンを取得するには、UIDeviceクラスのsystemVersionプロパティを使用します。 UIDevice* currentDevice = [UIDevice currentDevice]; NSString* sysVersion = [currentDevice systemVersion]; モデル(機種名)を取得する モデル(機種名)を文字列で取得することができます。UIDeviceクラスのmodelプロパティ
UITableViewは、決められたフォーマット(UITableViewCell)に基づいてリスト形式でデータを表示するクラスです。 データが多くなりリストが長くなった場合には、SectionIndex(セクションインデックス)を使ってセクション単位でのジャンプをする機能を提供します。 セクションインデックスを表示させる UITableViewのセクションインデックスを単純に表示させたい場合、UITableViewDataSourceのデリゲートのsectionIndexTitlesForTableView:メソッドを以下のように実装します。 - (NSArray *)sectionIndexTitlesForTableView:(UITableView *)tableView { return @[ @"2日", @"3日", @"4日", @"5日", @"6日", @"7日", @"
このページを最初にブックマークしてみませんか?
『ios.ch3cooh.jp』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く