酢ろぐ!

カレーが嫌いなスマートフォンアプリプログラマのブログ。

開発-iOS

iOSアプリ開発の記事一覧

iOSアプリケーションの開発Tipsを紹介しています。 導入 基本的なプログラミング 文字列操作 リフレクション マルチスレッド UIKit 拡張機能・エクステンション マルチメディア 画像処理 カメラ ネットワーク デバイス/センサー データ・ストレージ Apple Wa…

SwiftでNSAttributedStringを使って文字列を装飾する(UILabelに画像を表示する)

直近でやっていたプロジェクトでNSAttributedStringに関する知識が少なくて苦労したので忘れないようにメモしておきます。 NSAttributedStringに関してはすでに色んなブログやサイトで紹介されているのでご存知の方も多いかもしれませんが文字列を装飾してく…

Swiftでシングルタップとダブルタップとロングプレス(ホールド)に同時に対応する

iOS 3.2からUIGestureRecognizerが追加されてからよく使っていたのですが、シングルタップとダブルタップ、ホールド(ロングプレス)に同時に対応します。 シングルタップとダブルタップはUITapGestureRecognizerクラスで対応することができます。ホールド(長…

SwiftでWatchKitアプリのテーブルでセルの背景の角丸をなくす/セルの背景を消す/セルにセパレーター的なものを追加する

Apple Watch*1のWatchKitアプリで実装する際によく聞かれることのひとつとしてはテーブル(WKInterfaceTable)での表現力です。WKInterfaceTableを使っているといかにUITableViewが表現力に優れているのかが分かります。 それはさておき表題のように「テーブル…

AppStoreで公開中のiPhoneアプリを取り下げる(非公開にする)方法

本記事ではAppStoreで公開しているiPhoneアプリを取り下げる方法を紹介します。 AppStoreで公開中のiPhoneアプリを取り下げる 以下の作業は2015年4月1日時点でのiTunes Connectの日本語版UIを元にしています。 iTunes Connectにログインして「マイApp」をク…

Xcodeでのビルドを自動化するxcodebuildコマンドとIPAファイルを作成してiTunes Connect(Testflight)に投げる方法

2014年にAppleがTestflightを買収してから数年経ちました。Androidのサポートが打ち切られたりして対応に追われたこともありましたが、数年経ち公式にiTunes Connectのアプリ申請プロセスに組み込まれるようになりました。 iOS 8を公開した時期から1つのバー…

Xamarin.iOSで指定したフォント名で描画する

UIFontを生成する際にUIFont.FromNameメソッドを使うことで指定したフォント名のUIFontオブジェクトを生成することが可能です。UILabelのFontプロパティに生成したUIFontオブジェクトを設定することで指定したフォントで文字列が表示されます。 指定したフォ…

iOSでマスク画像を使ってマスク処理した新しいUIImageを作る

UIImage *srcImage = [UIImage imageNamed:@"test_image"]; UIImage *dstImage = nil; UIImage *maskImage = [UIImage imageNamed:@"mask_image"]; CGImageRef m = maskImage.CGImage; CGImageRef mask = CGImageMaskCreate(CGImageGetWidth(m), CGImageGetH…

「アプリ内課金+広告 iPhoneプログラミング」が発売されます!

秀和システムさまより「アプリ内課金+広告 iPhoneプログラミング」が発売されることとなりました。大場知悟(id:tworks)さんとの共著です。 本書は、iOSアプリのゲームやアプリで使われているアプリ内課金や広告の実装するための手引書です。iPhoneプログラミ…

9月30日に終了してしまうAdWhirlの応急処置をおこなう (iOS編)

まず最初にAdWhirlの紹介から。 iOS/Android向けのアドネットワーク(スマートフォンの広告提供元)は沢山あります。スマートフォン関連で最も賑やかな分野のひとつで、日々あるところが潰れて、またあるところが登場してきて、アドネットワーク自体の増減があ…

「Undefined symbols for architecture armv7:〜」という警告が出たときの対策方法

オープンソースのライブラリを使おうとプロジェクトに組み込むと、ビルド時に以下のような「Undefined symbols for architecture armv7:〜」というエラーが表示されてビルドに失敗することがあります。 Undefined symbols for architecture armv7: "_kCGImag…

CFNetworkとDarwinの組み合わせからiPhoneとiOSの分布を調べる方法

過去は下記の通りCFNetworkとDarwinのバージョンの組み合わせからiPhoneとiOSのバージョンを特定することができました。2012年の時点ですでに特定が難しくなっています。Google AnalyticsやFirebase Analyticsなどユーザー動向を調べる方法が発達してきてい…

iOSでNSDateから曜日を取得する

NSDateから曜日を取得する必要が出てきました。このプロダクトでは曜日を取得する処理はほとんど要らないんだけど、他のプロジェクトでも使えるようにNSDateを拡張してカテゴリで実装してみました。あとはこのソースコードを取り込めばNSDateの拡張機能が使…

テキストのスクロールを行うアラートビュー「ScrollAlertView」をGitHubで公開しました

ユーザーに対して長文を読んでもらいたい場合、「見せる」方法はいくつかあると思いますが、すぐに思いつくのはUIAlertView上でScrollViewを載せてテキストをスクロールさせる事ではないでしょうか。今までに誰かが作っていると思ったのですが、オープンソー…

iOSで地図アプリへ位置座標を渡して連携起動する

本記事は「カスタムURLスキームを使って地図アプリに位置座標を渡して連携起動する - iOSアプリ開発の逆引き辞典」に転記しました。 iPhoneOSはマルチタスクではないので、アプリの連携起動を行う場合一旦自分自身を閉じる必要があります、がここでは関係な…

iOSでZBarSDKを使ってバーコードの読み込みをおこなう

すまべん・Androidの会勉強会の時に、モノタッチの中の人がバーコードを読み取る為にこんなライブラリを使っています・・・と、ZBarSDKを使われているのを知って、ぜひうちでも使ってみようと言う事になりました。ZBarSDKは、カメラプレビューからバーコード…

autoreleaseと僕とメモリ不足

Obj-Cにおけるオブジェクトの扱いは、allocだったり、retainだったり、autoreleaseだったりとややこしいですね。 NSAutoreleasePoolのリファレンスによると、メインスレッドでイベントループの最初にNSAutoreleasePoolが作られ、イベントループの最後にrelea…

Interface Builderを使ってカスタマイズしたUITableViewCellを使ってみた

http://konton.ninpou.jp/program/cocoa/userinterface/UITableView/UITableView1.html http://d.hatena.ne.jp/KishikawaKatsumi/20081024/1224857278 http://ameblo.jp/xcc/entry-10503210925.html を参考に。今日始めてiPhoneアプリを開発を始めたばかりの…