タグ

xcodeに関するgriefworkerのブックマーク (46)

  • Storyboardとの付き合い方 2018

    Aug 12, 2018 少し前に、自分のStoryboardの使い方をツイートしたら割と反応があったので、改めてまとめてみようと思います。これまで何年かiOSアプリの開発をしてきて、Storyboardとの付き合い方は何度も変わりました。なので、今回紹介するものはあくまで2018年現在のもので、来年には変わっているかもしれません。 説明のイメージを掴みやすくするため、画面の例を用意しました。左が編集時のStoryboardで、右が実行時のiOSシミュレーターです。具体的なトピックが出た時に、この例を説明に使うことがあります。 記事の最後にこれが動作するサンプルコードも用意しましたので、興味があればどうぞ。 Storyboardを使う目的 以下の2つを重視して、Storyboardを選択しています。 動作確認に掛かる時間を短縮する 成果物の構造を把握しやすくする ただし、Storyboar

    Storyboardとの付き合い方 2018
  • Xamarin StudioでiOSの無料実機テストするまでのメモ書き - Qiita

    Xamarin StudioのiOSプロジェクトApple Developer Programへの登録なしでの実機確認をしようと思って http://qiita.com/natsumo/items/3f1dd0e7f5471bd4b7d9#_reference-d883f01ec03026dd73f4 http://ytabuchi.hatenablog.com/entry/2015/09/18/191258 ここに載っている方法を試してみて大体はできたんですが、一部躓いたところがあったのでそのメモを残します。 手順 AppStoreでXcodeをインストール XcodeにAppleIDを追加 Bundle Identifier取得のためにXcodeで捨てプロジェクト作成してビルド 3で作成したBundle Identifierと同じになるようにXamarin Studioのプロジェクト

    Xamarin StudioでiOSの無料実機テストするまでのメモ書き - Qiita
  • 初級者から中級者にレベルアップするためのXcodeデバッグ術 - Think Big Act Local

    効率よくiOSアプリ開発を行うために、効率よくデバッグを行いたいですよね。 このエントリでは「print文を書く以外デバッグの方法を知らなかったあの頃の自分」を初級者と定義して、自分がやってるデバッグ方法について書いてみます。 Xcodeデバッグ術 1. printを使わずに変数の中身を確認する age, name, coverImage という以下の3つの変数が宣言されています。 let age = 27 let name = "Ryosuke Hiramatsu" let coverImage = UIImage(named: "sample.jpg") これらの変数の中身をチェックしたい時、printで出力するのでも良いですが、それでは出力する値を変えたくなった時(print(age)をprint(age*2+1)に変更とか)に再度ビルドが必要になって時間がかかります。 printで

    初級者から中級者にレベルアップするためのXcodeデバッグ術 - Think Big Act Local
  • Swift2で作るコマンドラインツール - クックパッド開発者ブログ

    会員事業部の三木(@giginet)です。 この記事では、業務改善のために開発者向けのツールをSwiftで開発してみたため、その知見についてお伝えしたいと思います。 なお、この記事はXcode7.1上でSwift2.1を使った開発を前提としています。 作ったもの クックパッドiOSアプリでは開発の際に、新しい機能を実装したり、インターフェイスを改善したあとにiOSシミュレーターの動画を撮影しPull Requestに貼り付けています。 動画を撮影する際には、汎用的にスクリーンキャストを撮影する社内ツールを使っていたのですが、使いづらい面も多かったため、 簡単にiOSシミュレーターの操作をアニメーションgifとして記録したいという需要がありました。 そのため、空き時間を使って、簡単なユーティリティを実装しました。 なぜSwiftで作るのか 今回は、OS Xの開発用SDKであるCocoaを使い

    Swift2で作るコマンドラインツール - クックパッド開発者ブログ
  • [Xcode 7] UI Testingを試してみる | DevelopersIO

    はじめに Xcode 7ではXCTest frameworkの新機能としてUI testing(以降、UIテスト)が実装されました。 UI操作をレコーディングしてテストコードを生成することで繰り返しUIテストが行える便利な機能です。 今回は簡易電卓アプリを作成し、簡単な計算のUIテストを行ってみます。 開発環境 開発環境は下記の通りです。 Xcode 7.0.1 iPhone 6s シミュレータ テスト対象アプリ 今回は加算と減算のみ可能な簡易電卓アプリを用いてテストを行います。 アプリのソースコードはこちらにアップしました。 プロジェクト作成時の「Include UI Tests」 Xcode 7ではプロジェクト作成時に「Include UI Tests」というオプションが追加されました。 UIテストを試す場合は下記の通りチェックをつけましょう。 ※もちろん、ここでチェックをつけなくても

    [Xcode 7] UI Testingを試してみる | DevelopersIO
  • Storyboard Reference がいい感じ - SH Lab の アプリ開発部屋

    勉強会で持ち帰ったトピックが気になった 先日参加した iOS 9 の勉強会にて、岸川克己さん@Realm が話された Storyboard Reference の話が非常に興味深かったので、自分なりに追加調査してみました。 dev.classmethod.jp まずはstoryboardの欠点とか storyboardは、xibでの開発と比べて、画面の遷移が視覚的に分かりやすいのと、segueを利用できるという利点があります。ですが、ファイルが1つなので、チーム開発を行うと競合しやすく、分業しづらいという欠点があります。 そのため、segueを利用できるという利点を破棄してでも画面ごとや機能ごとにstoryboardを分割する、という手法が選択されがちだと思います。 分割した別のstoryboardを利用するためには、プログラム側でいろいろやる手間が発生してしまいます。遷移にsegueは利

    Storyboard Reference がいい感じ - SH Lab の アプリ開発部屋
  • Xcode7で1円も払わずに自作iOSアプリを実機確認する - Qiita

    日(2015年9月17日)正式公開されたXcode7からは Apple Developer Program に登録しなくても自作iOSアプリを実機にインストールして動かすことができると同僚のiOS技術者に教わったので早速試してみたら当に出来て感激した。 そのことをつぶやいたらメチャクチャRTされたのでスクリーンショット付きで手順を書いておく。 うおー、1円も払ってないのに当にXcode7からは実機で動かせた!これ週末楽しみすぎるだろ!「設定 > プロファイル > デベロッパAPP > 自分のAppleID > [自分のID]を信頼」で自作アプリが実機で動きます pic.twitter.com/8g42D5WiyW — 0.1㌧おじさん (@fushiroyama) 2015, 9月 17 僕みたいな普段はAndroid開発をしててiOS開発にも手を出してみたもののシミュレータだけでは

    Xcode7で1円も払わずに自作iOSアプリを実機確認する - Qiita
  • ⚡️Brew Sparkling: homebrew for iOS - みずぴー日記

    自分のiOSデバイスなら開発者ライセンスなして、アプリを動かせるようになるので、自動でコードを落してきてビルドして転送するタイプのアプリ配布補助をだれか初めてほしい。「brew install ios/hoge」でイスントールできる感じ— mzp (@mzp) 2015, 6月 10 Xcode7 からApple Developer Programに参加しなくて、iOSアプリの実機デバッグが可能になった。 これを利用し、Github等で公開されているソースコードをダウンロードし、自分のiPhoneにインストールするHomebrew拡張を作った。 例えば brew sparkling install SparkingSample でサンプル用のアプリケーションがインストールされる。 主な用途としては、次のようなアプリケーションの配布を想定している。 進捗時計のような雑なアプリケーション。Ap

    ⚡️Brew Sparkling: homebrew for iOS - みずぴー日記
  • 【iOS9】Storyboard ReferenceでStoryboardを分割しよう - 非常識プログラマの憂鬱

    2015-06-10 【iOS9】Storyboard ReferenceでStoryboardを分割しよう iOS Swift 自分は、画面レイアウトの作成にStoryboardを使っていますが、 1つのStoryboardにあれやこれやViewControllerを配置して、 繋げるようなことはしていません。 2、3画面ならいいのかもしれませんが、画面数が多すぎると見通しが悪くなり、 何より複数人で作業する場合は、 同時に同じStoryboardを触ることが出来ません。 なので、基的に1ViewController = 1Storyboardで作っています。 しかしそうすると、画面遷移する際にコードでStoryboardからViewControllerを作って 新たに表示するという記述が必要になってきます。 新たにXcode7らStoryboard ReferenceというS

    【iOS9】Storyboard ReferenceでStoryboardを分割しよう - 非常識プログラマの憂鬱
  • 誰でも無料でiPhoneの実機を使ってiOSアプリ開発する方法 - Qiita

    WWDC 2015でiOS Developer Programに関する変更があり、 これまで年間11,800円の登録費用を払ってDeveloper Programに登録しなければできなかった、 iPhoneiPadの実機を使った開発が可能になりました。 Xcode7 での無料の実機ビルドの方法についてまとめます。 (記事の内容は一般公開されている情報に基づいています。 beta版に関するスクリーンショットは使用していません。) 必要なもの ・Mac ・Xcode7 Xcode7のダウンロード 2015年6月現在、beta版のXcode7をダウンロードします。 https://developer.apple.com/xcode/downloads/ ファイルサイズが4Gありますので、PCの容量が足りない場合は不要なデータを削除して容量を確保してください。 Xcodeの起動 インストールし

    誰でも無料でiPhoneの実機を使ってiOSアプリ開発する方法 - Qiita
  • Xcode でカラーパレットを保存して共有したい · hikarock blog

    と思ったので調べた。Xcode というより Mac OS X の機能ぽい (OS X Yosemite & Xcode 6.1.1 の場合。他のバージョンで使えるかはわからない)。 Xcode でカラーパレットを開いて、中央のタブ (Color Palettes) を選択する。 左端の歯車のアイコンをクリックしてNewを選択するとカラーパレットを作成することができる。 保存したカラーパレットは~/Library/Colors/以下にFoo.clrのようなファイル名で保存されているので、このファイルをプロジェクトメンバー間で共有すると便利そう。

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

    2014年にAppleがTestflightを買収してから数年経ちました。Androidのサポートが打ち切られたりして対応に追われたこともありましたが、数年経ち公式にiTunes Connectのアプリ申請プロセスに組み込まれるようになりました。 iOS 8を公開した時期から1つのバージョンに対してバイナリを複数投げることができるようになりました。 Jenkinsを使ってビルドしたiOSアプリのバイナリを自動でアップロードできるように、xcodebuildと延々戦っていたので、Xcode 6.1で実行した結果をメモしておきたいと思います。僕がJenkinsビルドマンをやっている限りこの記事は随時更新されていきます。 環境について 僕の環境での結果なので、他の環境で適用できなかったらごめんなさい。プロジェクトの構成によっては、xcodebuildがエラーを吐くと思うので適時良い感じに読みかえ

    Xcodeでのビルドを自動化するxcodebuildコマンドとIPAファイルを作成してiTunes Connect(Testflight)に投げる方法 - 酢ろぐ!
  • @IBDesignableと@IBInspectableを使ってグラデーション可能なカスタムViewを作ってみた - Qiita

    リアルタイムに描画結果を確認 Xcode6で追加されたInterfaceBuilder(以下IB)の新しい機能であるIBDesignableとIBInspectableを使ってみました。 特徴としては細かなパラメータを設定できて、それを画面上で確認できることです。 以下の画像はIBDesignableを利用した円形のグラデーションをレンダリングするカスタムViewを使用して、IB上でパラメータを調整して作ったものです。 グラデーションの色、グラデーションの開始地点などをIBで設定しています。GitHubプロジェクトファイルをあげています。 Autolayout対応がマストになった今、いろいろなサイズでの見た目を簡単に調整できた方が楽ですよね。 以前はこういったカスタムViewの細かな調整はコードを修正しながら行っていましたが、ちょっと工夫すればIB上で簡単に変更できるようになります。 @

    @IBDesignableと@IBInspectableを使ってグラデーション可能なカスタムViewを作ってみた - Qiita
  • 【iOS】LINE風チャットUIを実装〜メッセージ入力欄編〜 - Qiita

    LINEとかチャット系アプリは大体踏襲しているアレです。 まとめて解説してるブログが見つからなかったので、必要最低限の部分だけメモっときたいと思います。 今回はメッセージ入力欄のみで、ポイントはこの二つ。 メッセージ入力欄・送信ボタンは下部固定(キーボード出現時は隠れないように移動) 入力テキストの行数によってメッセージ入力欄の高さが変わる 実現方法は色々だと思いますが、今回は StoryBoardでAutoLayout を使ってやります。 【完成イメージ】 StoryBoardでレイアウトを作成 まずは以下の構造で各種UIパーツをレイアウトします。 Constraintを設定 Constraintについてここでは詳しい説明はしませんが、View間の相対位置やサイズ等を定義するルールといったところです。 画面サイズが異なる端末でもそれぞれいい感じにレイアウトが組めるので便利です。 Stor

    【iOS】LINE風チャットUIを実装〜メッセージ入力欄編〜 - Qiita
  • Carthage: Swift対応の新しいライブラリ管理

    Nov 20, 2014 iOS, OSXで利用できるライブラリ管理ツールといえばCocoaPodsが有名ですが、 それとはまた違った方針のCarthageというライブラリ管理ツールがリリースされました。 GitHubのデベロッパーを中心としたチームで開発が進められているようです。 https://github.com/Carthage/Carthage インストール方法 Releasesからpkgをダウンロードして、インストーラーを実行します。 使い方 Cartfileを書く carthage updateを実行する Carthage.buildに作成された.frameworkをXcodeに追加する Cartfileではgithub, gitの2種類のキーワードが利用でき、以下のように書きます。 サポート対象 Carthageはdynamic frameworkのみをサポートするため、C

    Carthage: Swift対応の新しいライブラリ管理
  • コマンドラインからiOSアプリケーションをiTunes Connectにアップロードする - 24/7 twenty-four seven

    参考 Testflight build notes via iTMSTransporter [self reloadData];: Automatic app creation and binary upload Command upload App/Ipa to the iTunes Connect App Store Redesign of itunes connect · Issue #38 · kovpas/itc.cli · GitHub TL;DR Xcode(厳密にはApplication Loader)に付属するiTMSTransporterまたはaltoolを使います。 上記のリンク先を見ればだいたいわかります。 altoolのほうが直感的なコマンドで簡単です。 iTMSTransporterはそもそもゲームのアイテムなど大量のIn-App Purchaseのメタデータを

    コマンドラインからiOSアプリケーションをiTunes Connectにアップロードする - 24/7 twenty-four seven
  • 【UIScrollView × Autolayout 問題】Appleエンジニア直伝のファイナルアンサー - その後のその後

    iPhone6,6Plus サポートとか LaunchScreen.xib とか Size Class とか考えると、もはや Autolayout は必須な感じになってきてます。 http://d.hatena.ne.jp/shu223/20141002/1412209257 で、Autolayout ✕ UIScrollView の例の問題(UIScrollView のサイズを superview との制約で動的に変えるときにその中身も動的に変えたい、ってやつ。こんな雑な説明でもハマったことある人にはわかっていただけるかと・・・)、Apple 公式でこんなドキュメントが出てますが、 Technical Note TN2154: UIScrollView And Autolayout "Mixed Approach" とかなんか筋が悪い感じだし、"Pure Auto Layout Appr

    【UIScrollView × Autolayout 問題】Appleエンジニア直伝のファイナルアンサー - その後のその後
  • 実践 Auto Layout - jarinosuke blog

    今こそ frame 思考脱却の時 Xcode 4 / iOS 6 から存在していた Auto Layout でしたが、 当時は Interface Builder の Auto Layout 対応も中々ひどく、使うのが辛かった記憶があります。 そんななか僕は順調に layoutSubviews に傾倒していったわけですが、 iPhone 6/iPhone 6 plus がついに登場し、Size Class という新しい概念も投入され 現状では間違いなく2年前とは比べ物にならないレベルで Universal アプリは作りやすくなりました。(ただし iOS 8 専用アプリのみ) ある程度のデザインパターンを懐に用意していた方が時間が省けます。 ここでは Auto Layout を用いたレイアウトに関するユースケース毎に簡潔に書いていますので、 「それ知ってるわ」みたいなのがあったら適宜読み飛ば

  • Xcode 6 時代のマルチデバイス対応 〜Size Classとベクター画像〜 - その後のその後

    とあるお仕事で、iPad をサポート(= Universal 化)してほしいという要望があり、せっかくなので iPhone 6 / 6 Plus (4.7 / 5.5 inch スクリーン)もサポートしようってことで、新しい Xcode 6 の新しい仕組みである Size Class を使って複数画面対応を行ないました。あと、同じく Xcode 6 から Asset Catalog でベクター形式がサポートされるようになったので、こちらもトライしてみました。 で、そのときに学んだ諸々の断片的なメモです。勘違いもあるかもしれないのでその際は優しくご指摘いただけますと幸いです。 ※ちなみに Size Class やベクター形式画像の使用は iOS 8 以上縛りではありません。単に Xcode 6 の新機能というだけなので。 Size Class の前提知識をつける 「Size Classsとは

    Xcode 6 時代のマルチデバイス対応 〜Size Classとベクター画像〜 - その後のその後
  • Xcode6でベクター画像を利用する。 - tomoyaonishiのブログ

    Xcode6で密かにベクター画像が使えるようになっています。 これを使えば@1x, @2x, @3x画像を用意する煩わしさから解放されます! 使い方は非常に簡単です。 PDF画像を@1xのサイズで書きだす。 AssetCatalogをクリックする New Image Setで画像セットを追加する 画像のようにAttributesのTypesをVectorsに変更する 作成したPDF画像を置く。 こうすれば後は今までと同じように画像を扱えます。 注意しなければいけないことは完全なベクター画像の対応というわけではなく、ビルド時に@1x, @2xなどの各PNG画像が書き出されるようです。ソースコード上で拡大や縮小ができるわけではないようです。 デザイナーの負担もエンジニアの負担もすごく軽くなりますね。 WWDC 2014 Session Videos - Apple Developer

    Xcode6でベクター画像を利用する。 - tomoyaonishiのブログ