BAD_ACCESS

おもにiOS、ときどき変な電子工作、ガジェット話。

iPhone

#6 複数の音源から再生したい音源を選ぶーC4でAudio Playerをつくる(4)

この記事は「一人アドベントカレンダー2013〜Lonely Advent Calender 2013〜」の6日目の記事です。 ようやく「一人アドベントカレンダーやってるんですねw」と話しかけるようになりました。 前回はC4Sampleの音源の再生・停止をコントロールする機能を実装…

#2 C4でつくるプロジェクトの構造とC4Timer

この記事は「一人アドベントカレンダー2013〜Lonely Advent Calender 2013〜」の2日目の記事です。 まず、C4とはなんぞという方はこちらの記事にて概要を説明しております。はじめてのC4!|BAD_ACCESS C4はとにかくシンプルです。まだまだ可能性を秘めてい…

#1 一人アドベントカレンダー2013〜Lonely Advent Calender 2013〜

なんとも寂しい響きのタイトルですが、12月1日〜12月24日まで一人でアドベントカレンダーをやろうと思います。 トピックはまだ未定の部分もありますが、メインは以前もブログにて紹介したC4C4:http://www.c4ios.com/を使ったアプリについて書いていく…

【ブラック】Black Fridayでググった結果wwwwwww【フライデー】

釣りっぽいタイトルですみません。 今日(昨日)はBlack Fridayということで、Black Fridayってなんでしょうね。 アメリカ合衆国で、感謝祭(11月の第4木曜日)翌日の金曜日のこと。 クリスマス・セールが始まり、小売店が大きく黒字になることからこう呼ば…

ただ「いいね!」を押してもらうだけのシンプルなサンプルアプリ"Go Like On"を書いた

ずいぶん前に書いたサンプルアプリ。アプリ側からワンタップで「いいね!」までいけるかと聞かれて試しに実装してみた。 クライアント側の実装はすごくシンプルだけど、facebook developer側の設定がちょっとややこしかったのでメモとして残しとく。 GitHub …

iTunes Storeの情報を簡単に取ってきて表示させるだけのサンプル"AppRankingParser"を書いた

Appleが太っ腹にも提供している"RSS Feed Generator" 目当てのランキングを取り出すためのインターフェイスをつくりました。 (RSS側の値が変更されると身も蓋もないことになるので今後なんとかしたい) GitHub somtd/AppRankingParser 使ってもらうのはclas…

はじめてのC4!C4のデモまとめ

前回、C4について本当に簡単にまとめて概要を説明してしまったため、結局何ができるのかさっぱりわからない記事になってしまった\(^o^)/ 今回はあまり深く掘り下げずに、公式ページのTutorialsをもとにして、どういうことができるか動画を中心にまとめる。…

リアクティブプログラミングをかじる ReactiveCocoaについて

遅ればせながら、リアクティブプログラミングをかじる。 なぜリアクティブプログラミングは重要か。 すごくまとまっている記事ですが、まだイメージできない... なのでObjective-Cで書かれたコードを読んで理解してみようと試みている。 ReactiveCocoaはCoco…

自前のライブラリをCocoaPodsで管理するメモ

意外とまとまっていないかったので作業しながらまとめたメモ。 CocoaPodsとは 公式:http://cocoapods.org CocoaPodsをプロジェクトに追加する方法はこのまとめが丁寧でわかり易かった。 CocoaPodsを使ったXcodeプロジェクトの作り方(1) CocoaPodsを使った…

オリジナルの「loadingView」をサクッとつくるために「SVProgressHUD」をforkしてみた。

標準のUIActivityIndicatorで満足できない方に まずは超有名なこちらのSVProgressHUDをお試しすることをおすすめします。 これだけで、大概の方は用が足せてしまうのではないのでしょうか。 しかしながら、仕事上、または己のアプリのデザインポリシー上、特…

オリジナルデザインのトグル・スイッチをいとも簡単に作れる「ToggleView」をつくってみた。

あけましておめでとうございます。 昨年の暮れにちょこちょこと手をいれていたUIコンポーネントを紹介します。 標準UIでは満足できない方へ 標準のスイッチのデザインではどうしてもアプリの雰囲気に合わない時ってありますよね。 実際、仕事の中でも、やは…

cocos2dでビットマップフォントをretina対応にする。

cocos2dで作る iPhone&iPadゲームプログラミング作者: Steffen Itterheim,畑圭輔,坂本一樹,加藤寛人,高丘知央,株式会社クイープ出版社/メーカー: インプレスジャパン発売日: 2011/06/24メディア: 単行本(ソフトカバー)購入: 9人 クリック: 601回この商品…

cocos2d覚え書き便利ツール導入メモ

cocos2dで作る iPhone&iPadゲームプログラミング作者: Steffen Itterheim,畑圭輔,坂本一樹,加藤寛人,高丘知央,株式会社クイープ出版社/メーカー: インプレスジャパン発売日: 2011/06/24メディア: 単行本(ソフトカバー)購入: 9人 クリック: 601回この商品…

StoryBoardの開発手順(公式)日本語ドキュメントがアップされたみたい

英語が読める人にとっては今更感があるかもしれませんがStoryBoardの開発手順の公式ドキュメントがアップされました。 日本語で記載されている資料としてはまだ珍しいのでそろそろ本格的にStoryBoardを使って開発される方は必読です。以下、公式のドキュメン…

ビュー関連のデバッグに便利そうな手法

わたくし先週はビューの回転にすっかりハマってしまいまして。。。 自戒の意味も込めて、ビュー関連のデバッグに便利そうな手法をしらべましたのでまとめてみました。 recursiveDescriptionメソッド ビューの階層構造やframeの値を一気に取得するためのメソ…

動画の圧縮についてスタディしてみた

AVAssetExportSessionの設定でどれぐらいの圧縮ができるかをスタディしてみた。 iPhone4で動画を撮影した(15秒、1分、3分)ものをベースに実施。 ※このあたりは機種によって変わるそうなので参考まで。 動画の時間 15Sec 1min 3min Original(byte) 22,302,0…

AVAssetExportSessionで動画の圧縮

カメラロールに保存された動画をアップロードする際にある程度データを圧縮する必要があると思いAVAssetExportSessionを使った方法を試してみるメモ。 AVAssetExportSessionについて 公式のドキュメントによると、 エクスポートセッションは、アセットの非同…

iOS5のTwitterフレームワーク(っぽい)画面をiOS4.xでも実装できる神ライブラリがあった!

Githubはこちらからdoubleencore/DETweetComposeViewController · GitHub 画面だけじゃなく実装上もTWTweetComposerViewControllerと同じような書き方ができるのも本当に便利! 興奮気味に実装の手順をメモ。 1.自分のプロジェクトにDETweetComposeViewContr…

URLスキームによるアプリの起動とAppDelegate内の処理について

バグを直していて改めて確認することがあったのでメモ。 iOSのバージョンによって違いがあるかもしれないが、後ほど調べてみる。 調査ケース (1) アプリがバックグラウンドで生きている状態。 (2) アプリがバックグラウンドで完全に死んでいる状態。 調査す…

ALAssetGroupの「addAsset」が返す値が時々NOになって困る。

需要ないと思うけど…写真をフォトライブラリにひとまとめにして保管(ー>アルバムとして保管)する際にカメラロール側に余分に保管されてしまう現象について。 あるアプリでダウンロードしてきた写真をアルバム単位で保管する機能がある。保管する際にアル…

UIButtonの中の文字をどうにかする方法。

UIButtonのインデントまわりLoading 意外とはまり所だったのでメモ。 UIButtonのtitleをインデントする方法 Configuring Edge Insets タイトルのインデント button.titleEdgeInsets = UIEdgeInsetsMake(CGFloat top, CGFloat left, CGFloat bottom, CGFloat …

ASIHTTPRequestで非同期処理をBlock使って実行。

この記事を参考に。ASIHTTPRequest example code - All-Seeing Interactive Blockをあまり理解していない中で これまでの処理との違い。 Block使わない - (IBAction)grabURLInBackground:(id)sender { NSURL *url = [NSURL URLWithString:@"http://allseeing…

NSNotificationCenter(通知センター)への登録。

これまで異なるクラス間でメソッドを呼び出す際にはdelegateで取り回しをしていたけど、NSNotification(通知センター)を使ったほうが可読性が高まってあとでメンテナンスしやすいというアドバイスをいただいた。全てのケースに当てはまるわけじゃないけど…

Apple Push Notification serviceを使うためのCSR手続きについて

何回かやっていてもやっぱりまた忘れていた。こんどこそ忘れないためのメモ。Apple Push Notification service(以下APNs)を使う際のAppIDは「com.companyname.*」のようにはできない。 改めて新しいAppIDをつくる必要がある。AppIDができたらAPNsを有効に…

AVCaptureSessionを使ってカメラアプリをつくるときのUI関連処理

カメラアプリ実装での悩み。開発継続中。 iOS4から利用可能となっているAVCaptureSessionを使うことでカメラアプリの自由度が格段に上がる! ということでドキュメント精読。キャプチャセッション自体の処理はGCDを使ってメインスレッド以外で行われる。 (…

Newsstandアプリを開発する(1)

Newsstandアプリのモックにとりかかる。Newsstandのアプリ開発情報がとにかく少ないのでまずは公式のリファレンスとWWDC2011の動画、英語の記事を参考にするしかない。 しばらく開発メモがてら更新していく。まずNewsstandアプリをつくるために何が必要か? …

StoryBoardを使うけどSeguesは使わない場合の画面遷移の方法

需要があるかどうか… StoryBoardを使った画面遷移の設計・開発は直感的にできて非常に有用。 ただし、ちょっと標準のやり方と離れていくと、途端に使い方を迷ってしまうことも否めない。 今回はStoryBoardを使って開発を進めつつもSeguesを使わない場合の画…

いまさら聞けないUIView(1)「frameとboundsの違い」

カメラアプリの開発に取り掛かっていて、どうもUIViewについて理解が浅い気がしてきた。 いまさらと言われても、思った時にやるのが一番!ということでUIViewについてのメモ。 UIViewクラス概要 お決まりの公式ドキュメント。 相変わらず充実の内容です。色…

StoryBoardでGesture Recognizerを追加する。

引き続きiOS5関連について。 StoryBoardを使った開発は画面の少ないシンプルなアプリや画面遷移のイメージをプロトタイプとして確認するにはうってつけの開発方法だと思う。 今回はStoryBoardを使った画面作成でGesture Recognizerを追加しようとしたときの…

テーブルビューで複数のセルを同時選択が可能に!

最近開発したアプリで自前でテーブルビューのチェックボックスコントローラをこしらえたのだが… ついに標準でも複数セルの同時選択ができるようになった様子! Loading - (void)viewDidLoad { [super viewDidLoad]; self.dataArray = [NSMutableArray arrayW…