タグ

ブックマーク / tech-gym.com (17)

  • UITabBarControllerを効率的に実装出来るライブラリを書いた | Technology-Gym

    UITabBarControllerはタブバーのコントローラーですが、 タブバーは細かいデザインの調整を行う場合はUITabBarControllerのサブクラスを作って実装するパターンが多いと思います。 一つのStoryBoardに全てのタブの参照がある場合はInterface Builderなどでもある程度はデザインを設定できますが、StoryboardをViewController毎やタブ毎等に分けていた場合はInterface BuilderだけだとIBOutletを結べなくなります。 運用的にはタブやViewControllerでstoryboardファイルを分けた方が扱いやすいと感じるので、タブを関連付けるにはUITabBarControllerのサブクラスを作ってコードで結んでいく必要があります。 Storyboardを1画面ごとに分割した話 – 24/7 twenty-fo

    laiso
    laiso 2014/08/19
  • OCUnitをコマンドラインから実行してテストする | Technology-Gym

    OCUnit系のTest Bundleを使ったテストをコマンドラインから実行する方法について簡潔に書いてみます。 (Xcode 4.6~) サンプルとして以下のプロジェクトをコマンドラインからテストしてみます。 azu/notify-changeLog · GitHub $ make test でテストが走るようにMakefileを書きます。 Makefileの中身はすごく単純で、以下のようになっています。 test: osascript -e 'tell app "iPhone Simulator" to quit' xcodebuild -workspace notify-changeLog.xcworkspace -scheme Tests -sdk iphonesimulator ONLY_ACTIVE_ARCH=NO TEST_AFTER_BUILD=YES clean buil

    laiso
    laiso 2013/05/09
  • 普段良く使ってるiOSのライブラリまとめ(CocoaPods) | Technology-Gym

    以前、似たような記事(最近使っていたiOSアプリ開発ツールやライブラリのまとめ | Technology-Gym)を書きましたが、 CocoaPodsを使い出してからライブラリの使い方が大分変わりました。 最近はCocoaPodsを使ってライブラリを管理するようにしているので、よく使うライブラリを簡単な紹介と一緒にまとめてみました。 そのままインストール出来るように、Podfileも一緒にレポジトリに入っています。 azu/Podfile · GitHub 細かい紹介は、上記をみてもらうとして、その中でもおすすめを書いておきます。 最初は、 MagicalRecord MagicalRecordのREADMEを意訳 – Object for cutie CoreData周りを管理するライブラリです。 2.0.xで色々ゴタゴタがありましたが(child contextのsave周り)、2.1

    laiso
    laiso 2013/03/07
  • 2012年のiOSアプリ開発の振り返り | Technology-Gym

    2012年(主に後半の3-4ヶ月ぐらい)でのiOSアプリ開発についての振り返りの雑談をしたので、 その時のメモとなります。 UIAppearance Proxy -> デフォルトの色とかをプロキシ経由のものにする デフォルトの色や画像の適応 UIAPPEARANCESELECTORで自作のライブラリもUIAppearance対応可能 AHAlertView では実装されてる Cocoaの日々: UIAppearance で色や画像を変える UIAppearance によるタブカスタマイズ How To Customize UITabBar on iOS 5 – Felipe Cypriano UITabBarのデザインを変更する|blog|Penta creation idev-recipes/RaisedCenterTabBar at master · boctor/idev-recip

    laiso
    laiso 2013/01/17
  • シンプルなカスタムセルの作り方とセル内のボタンへのイベント設定方法 | Technology-Gym

    iOSのUITableViewのAPIは結構よくできているので色々な事が行えます。 UITableViewの基的な事は下記の記事を読むといいでしょう。 iOS Table View入門 #1 | クラスメソッド開発ブログ iOS Table View入門 #2 | クラスメソッド開発ブログ iOS Table View入門 #3 | クラスメソッド開発ブログ また、UITableViewで表示するUITableViewCell(セル)はデフォルトで幾つかスタイルを持っていて、 シンプルなデザインならばこのプリセットを利用すればわざわざカスタムセルを使わなくても問題ありません。 [iOS]UITableViewCellのプリセットビュー – l4l プリセットのデザインでは目的を達成できない場合は、UITableViewCellを継承したカスタムセルを作成することになります。 (UITab

    laiso
    laiso 2012/10/25
  • iOS6でプライバシー > 写真へのアクセス許可があるかどうかを判定する方法 | Technology-Gym

    iOS6では、設定.appにプライバシーという項目が追加され、”写真”(フォトライブラリへの保存や読み込み)や”連絡先”などにアクセスする時に、 許可のダイアログが表示され、”いいえ”を選択した際はそれらへのアクセスが出来ないようになっています。 【iPhone】iOS6の写真系トラブル「写真へのアクセスを求めています」を「許可しない」としてしまった場合の対処 – OK!stiloドットコム iPhone5やiOS6で、カメラ系アプリが画像を保存しなくなった場合の対処方法 | fladdict ユーザーが”写真”へのアクセスを許可したかどうかを判定するには、AssetsLibrary.frameworkの+ (ALAuthorizationStatus)authorizationStatusを使って判定することができます。 AssetsLibrary.frameworkを追加して、[ALA

    laiso
    laiso 2012/10/17
  • iOS6とNSDateFormatterと和暦と24時間表示オフで発生しやすいバグについて | Technology-Gym

    まず、iOS6でのNSDateFormatterの変更点について ios6 – NSDateFormatter show wrong year – Stack Overflow で書かれているようにYYYYを使った場合の挙動が変わっている。 基的はyyyyを使うべきな場合が殆どなので、yyyyをつかうのを推奨 ここから先は、<strong>iOS6だけではなく他のバージョンも共通</strong>で、<br />iOS設定とNSDateFormmaterでよく発生させてしまうバグについて 和暦バグ iOSの設定.app -> 一般 -> 言語環境 -> カレンダー -> 和暦 or タイ歴 を設定したい場合に、 平成xx年のxxがyyyyに入ってしまい、表示がおかしくなったり、この結果を取得して加算などを行なっていた場合にはアプリがクラッシュするなどのバグが発生する。 NSDateFor

    laiso
    laiso 2012/10/03
  • iOS Provisioning PortalのDevicesの登録台数が100台で制限に達した時の対処方法 | Technology-Gym

    Devices – iOS Provisioning Portal – Apple Developer に開発やAdhoc配布に使うiPhoneiPad端末のUDIDを登録していると思いますが、 1アカウント100台までの端末しか登録できないようになっています。 この場合、既に使っていない端末などを削除する事で空きを作れますが、単純にDevicesで要らない物を消しただけでは上限に達したままで、 端末を追加登録することはできません。 Devices removed count against the 100 devices you are permitted to register per membership year. Any provisioning profile(s) associated with this device will become invalid in the

    laiso
    laiso 2012/10/03
  • UITableViewを使って典型的な”アプリについて”の画面を作る | Technology-Gym

    よく見かけるようなUITableViewを使った”このアプリについて”といった画面を簡単に作れるようにしたいなーと思ったので、簡単に作ってみました。 ソースコードはGithubにおいてあります azu/AboutAppView 実装した機能 datasourceは別のクラスで作ってセットできる 選択した際の挙動についてもdatasourceにblockで書ける Cell 背景とかを少しカスタマイズ ライセンス表示用のWebViewがセット 問い合わせ用にMFMailComposeViewControllerでメールを立ち上げる機能 簡単な解説を書いていくと、TableViewController(ソースではAboutAppTableViewController)にdatasourceやタップしたらといったものは書かないようにして、 外からインスタンス化した時などにdatasourceを渡せ

    laiso
    laiso 2012/06/07
  • MagicalRecord 2.0がリリース | Technology-Gym

    iOSアプリのCoreDataを扱いやすくしてくれるライブラリのMagicalRecord 2.0がリリースされました。 MagicalRecord 2.0はARC向けのものなっていて、ARCを使わないプロジェクト向けは1.8.3が最終バージョンとなるようです 導入方法自体は以前書いた記事とあんまり変わらないですが、少しARC対応等で違う所があるぐらいです。 CoreDataをActiveRecord風に扱えるMagicalRecordの使い方 | Technology-Gym 以前と同じように、CoreDataのモデルクラスをmogeneratorで生成する際に、mogeneratorはデフォルトではARCに対応したモデルクラスを生成しないので、 $ mogenerator -m Sample/Sample.xcdatamodeld/Sample.xcdatamodel/ -O Samp

    laiso
    laiso 2012/05/21
  • git-flowとgit-issueを使ったTiDD環境について | Technology-Gym

    以前書いた、TiDDとgit-flowを合わせた開発手法について | Technology-GymのRedminegit-flowを使ったチケットドリブンな開発手法は相変わらず続けていますが、少し使ってるツールが変わりました。 まずはgit-flow自体はそのまま使い続けています。 後述しますが、git-flowのhooksが正式に実装されれば、TiDDな開発はもっとスムーズに進むような気がします。 コマンドラインからredmineを操作するツールを以前は複数使っていましたが、 現在はgit-issueに統一してあります。 この記事で使用してるバージョンはgit-issue 0.8.0です git-issue : CLIでRedmine/Github-issuesのticketをbrows/editできるgitサブコマンド – ゆろよろ日記 git-issueはチケットの作成(git i

    laiso
    laiso 2012/05/17
  • iOSアプリにとりあえずでもカスタムURLスキームをつけるべし | Technology-Gym

    iOSアプリにはアプリ毎にカスタムURLスキームが設定でき、カスタムURLスキームを設定すると他のアプリからそのURLスキーム経由で、アプリを起動する事ができます。 カスタムURLスキームを利用する (1) | calmscape: //ソフトウェア開発部 「iPhoneアプリをカスタムURLスキームで呼ぶ」をも少し詳しく 単純に起動するだけではなくて、URLという用に自由にクエリなどを付けられるので、他のアプリから文字列を受け取って処理することもできます。 単独のアプリで特に他のアプリと連携するわけでもないという場合も多いですが、 そういう場合にもとりあえずカスタムURLスキームを設定しておくといい場合もあります。 他のアプリから、アプリを起動する事ができる これは、自分がそういう用途で使ってなくてもユーザーがそういう使い方をしたい時などにカスタムURLスキームが無いけないため 、当に

    laiso
    laiso 2012/02/24
  • 最近使っていたiOSアプリ開発ツールやライブラリのまとめ | Technology-Gym

    iOSアプリ(Objective-C)を書き始めて半年たったので、それまでに触ったりした開発ツールやObjective-Cのライブラリなどについてまとめてみる。 AppCode 個人的にはXcodeより好きなので、コードを書く時は基的にAppCodeで書いていた。 デバッガー周りやエラー表示についてはXcodeの方いいところが多いので、Xcodeも併用する。(どっちにしてもxibやData ModelをいじるときにはXcodeが必要な気がするので両方共起動してる事が多かった) AppCodeはリファクタリングやXcodeでAnalyzeとかしなくてもメモリ解放忘れとかわかるのと、Quick fix(Alt+Return)がすごく便利なので書くときにリズムを生むのに役立った。 WebStormも使っているので同じ系統のIDEに慣れているのもあるけど、JavaScript書いてる時よりObj

    laiso
    laiso 2012/02/14
  • 簡単なObjective-Cのテストフレームワーク導入 | Technology-Gym

    iPhoneUnitTests 公式に配布されているサンプルはXCodeから直接開くことができます。 XCodeのスタート画面 -> Learn about using XCode -> iPhoneUnitTestsで検索 -> Open Project 電卓アプリでSenTestingKitの基的なテスト方法がわかる。

    laiso
    laiso 2012/01/29
  • iOSで使えるBDDスタイルのテスティングフレームワーク「cedar」の導入方法 | Technology-Gym

    cedarはJasmineやRobolectric 等他の言語でもテスティングフレームワークを色々と作成しているPivotal Labs.によるObjective-C向けのBDDテスティングフレームワークです。 今回は適当な導入方法について まずはCedar-iOS static frameworkをビルドするために、Githubからcedarをcloneします。 ➜  objectiveC  git clone --recursive https://github.com/pivotal/cedar.git submoduleも含めて持ってきたいので–recursiveオプションでまとめてcloneします。 ダウンロードしたプロジェクトをXCodeで開く ➜  objectiveC  open cedar/Cedar.xcodeproj ビルドすると、ProductsディレクトリにiPh

    laiso
    laiso 2012/01/21
  • CoreDataをActiveRecord風に扱えるMagicalRecordの使い方 | Technology-Gym

    CoreDataをActive Record風に扱えるようにするiOS用のライブラリである、MagicalRecordの導入方法についてのメモ書き 今回作成したサンプルは azu/MagicalRecord-Sample – GitHub に置いてあります。 まずはCoreDataのモデルの下準備から 1. CoreDataを使うプロジェクトを作成する(種類はなんでもいいけど、今回はEmptyプロジェクト) プロジェクト名を MagicalRecordSample とした 2. <プロジェクト名>.xcdatamodeldファイル があるので、データベースのモデルを作成する 今回は以下のようなENTITIESを一つ持ったモデルを作成した。 ENTITIES : Person Attributes : age name 3. 次に作成したPersonエンティティからmogeneratorを使

    laiso
    laiso 2012/01/15
  • GH-Unitのコマンドライン実行について | Technology-Gym

    GH-Unit導入方法とAppCodeを使ったコンソール実行についての動画です。 (画質が悪くてとても見にくいです…) GHUnitの導入については下記の記事の手順そのままです。 GHUnitを導入する | Technology-Gym 後半は(上記の設定と一緒にしていますが)、GH-Unitをコマンドラインから実行できるようにして、動画ではAppCodeから呼び出して実行結果をAppCode内のコンソールで見るという感じの動画になっています。 コマンドラインから実行させる手順について動画の補足をしておきます。 コマンドライン用の設定はguide_command_line Documentに書かれているので、これをよく読んでおくと動画やっていることがわかると思います。 箇条書きで手順を書くと GH-Unitをアプリとして実行できるようにプロジェクトの設定をしておく 最初にcloneしてきた

    laiso
    laiso 2011/10/27
    参考になった
  • 1