Redirecting… Click here if you are not redirected.
![Redirecting…](https://cdn-ak-scissors.b.st-hatena.com/image/square/4cebe91baf3bcbe3b490062fe1a2d5b56ea3a5ef/height=288;version=1;width=512/https%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fc%2Fcou_z%2F20170617%2F20170617214112.png)
Xcodeの便利ツールとかじゃなくて、Xcodeを触る上で知っておいたほうが有利なこと これからも追加してく Double Click Navigation 誰か1度はやるかもしれない Xcodeを起動したらToolbarもAssistant Editorもない、この画面 まさに絶望、やる気をすべて奪う悪魔のウィンドウ 原因はProject Navigatorのファイルをダブルクリックで新しいウィンドウを開いたままXcodeを閉じてしまうこと。 解決にはPrefarence... > Navigation > Double Click NavigationをUses Separate Tabにすること これで、ファイルをダブルクリックしたときは、タブで表示される。 ショートカット 私がよく使うのだけ、他にもいくつかあるけど 編集 Esc 補完機能の呼び出し Cmd + / コメントアウト(
概要 この記事でできるようになること 安定してInfo.plistの内容(ここではBuild番号)を変更できる ふつうにRun Scriptで編集するとタイミングによってすぐにアプリに反映されないことがあったりしたがそれが解消される Info.plistに差分がでないのでcommitのときに邪魔にならない なお、この方法を教えてくれた熊谷さんがこの方法に行き着いた経緯や所感がこちらに詳しくまとめられています。詳細や考え方などをきちんと知りたいかたは是非、熊谷さんの記事をご一読ください! 必要な設定 Preprocess Info.plist file でInfo.plistをビルド前に確定させる Run Scriptで${TEMP_DIR}/Preprocessed-Info.plistを編集する 以下、具体的な話をします。 経緯 これまで、 デバッグ用やArchive用のアプリのバージョ
昨日はTableViewを使ったUIを作っていたのですが、おなじみの テーブルのセルをタップしたら、関連情報が次の画面で表示される という動作をやってみたかったので色々調べてみました。 大筋 Windows Store Application ならば Frame.Navigate(targetPageClass, parameter) のように遷移用のメソッドで直接パラメーターを渡す事ができ、パラメーターも Page.onNavigatedTo(navigateEventArgs) メソッドの引数から受け取る事ができます*1。 引数でパラメーターを受け取ることができるので、どのタイミングでパラメーターが渡って来るのかが非常に分かりやすく、かつスマートです。 しかし、iOSのフレームワークにはそういった機能は無いようです。 遷移先のViewControllerにpublicなメンバを作り、遷
Bolts is a collection of low-level libraries designed to make developing mobile apps easier. Bolts was designed by Parse and Facebook for our own internal use, and we have decided to open source these libraries to make them available to others. Using these libraries does not require using any Parse services. Nor do they require having a Parse or Facebook developer account. Bolts includes: "Tasks",
同期処理は簡単に非同期処理にできますが、非同期処理は簡単には同期処理にできません。 Objective-Cで、非同期処理を同期的に実行するにはどうしたら良いのかと調べたところ、ディスパッチセマフォを使うのが良いようでした。 セマフォとは信号装置とかいう意味らしいですが、「カウンタ」だと思って良いんじゃないかと思っています。 同期処理の例 まずは通常の同期処理から。 for (int i = 0; i < 5; i++) { sleep(1); NSLog(@"Process: %d", i); } これは、1秒ごとにカウントを表示する処理です。これは当然同期処理です。実行を始めると5秒間はこの先に処理が進めません。 同期処理を非同期処理にする 同期処理を非同期処理にするには、dispatch_asycを用いて、バックグラウンドのスレッドのキューに処理を追加すれば良いです。 dispatch
Note: If you got this problem after running gem update, jump here to find a solution. Unfortunately we've encountered a bug in libgit2 and we are going to have to force push into the Specs repository. (Also known as the ‘master’ spec repo.) What does this mean for you? Well, basically your CocoaPods setup is going to break. You are going to have to manually delete any local copies of the Specs rep
iOSアプリでクラッシュしたときにログを送信するサービスはいくつかありますが、自分はCrittercismをよく使います。ドキュメントを読んでその通りに実装すればすぐ動くので使いやすいです。 さらに手間も省く事ができるので、その辺りをメモしておきます。 SDKのインストール zipファイルをダウンロードして入れる事も出来ますが、CocoaPodsでインストールする事も出来ます。 $ pod search crittercism -> CrittercismSDK (4.3.1) Mobile App Performance Monitoring and Crash Reporting. pod 'CrittercismSDK', '~> 4.3.1' - Homepage: http://www.crittercism.com - Source: https://app.critterci
クラッシュログ解析サービスの crittercism と bugsense を使ってみたのでその比較。 今まで Android/iOS アプリのクラッシュログ解析は、自前でやっていました。具体的には plcrashreporter を組み込んで、自前の Web サーバにクラッシュログ送って、ファイル保存しておくという方法だったのですが、ログを分類したり、シンボルを復元したりが超面倒なので正直あまり活用できていませんでした。 クラッシュログ解析サービスはいくつかありますが、比較的安価に使えそうな crittercism と bugsense を試用しています。 どちらも、クラッシュが発生したログを取得してサーバに送り、スタックトレースなどの情報をブラウザで閲覧することができます。 実際使ってみると超便利です。もうこの手のサービスなしでは生きていけません。 大量にログがでたら見るのが大変じゃな
Thanks for your support over the years. Please contact info@shinobicontrols.com if you have any queries.
NSString *json = @"{ \"hoge\" : \"fuga\", \"piyo\" : { \"poyo\" : \"fuga\" } }"; NSError *error; NSDictionary *jsonDict = [NSJSONSerialization JSONObjectWithData:[json dataUsingEncoding:NSUTF8StringEncoding] options:0 error:&error]; NSString *value = [jsonDict valueForKeyPath:@"piyo.poyo"]; NSLog(@"val: %@", value); // val: fuga Register as a new user and use Qiita more conveniently You get articl
UIWebViewを使用する上での簡単な注意点をいくつか。 UIWebViewオブジェクトはリリース前にdelegateにnilを設定しておくこと リリース前にdelegateにnilを設定しておく必要があるのは、次のページで詳細に説明されているように、UIWebViewのロード処理が別スレッドで行われていることが関係しているためであるようだ。 [iPhone] UIWebView のリリース前に delegate に nil をセットする必要がある | Sun Limited Mt. 「iPhoneプログラミングUIKit詳解リファレンス」ではさらに、リリース直前にロード処理を中止している。 - (void)dealloc { if (webView.loading) { [webView stopLoading]; } webView.delegate = nil; [webView
追記(03/2014) COCOAPODS SEARCH 理想的なサービスが非公式にできていた。最高なので是非使いましょう。 以下は初稿 タイトルの件は忘れてください。 概要 CocoaPodsメインSpecリポジトリの全登録モジュールを対象にGitHubでのwatcher/star数などを参考にした一覧を作成しました+Objective-C Toolbox が欲しい話。 なにかというとローカルのCocoapodsのpodspecディレクトリの各:sourceからGitHub上のリポジトリを特定してAPIで取得しただけです。なのでGitHubにないリポジトリは換算されてない。 作業に使ったスクリプトがこのへんにあります https://github.com/laiso/objc-toolbox/tree/master/script なんでそんなものが必要だったのかというと、前からmetac
UITableViewのセル再利用のためのメソッドで、dequeueReusableCellWithIdentifier:というメソッドがありますが、それによく似たメソッドdequeueReusableCellWithIdentifier:forIndexPath:がiOS SDK 6.0から追加されたようです。 これは、UICollectionViewの追加と同時にセルの再利用まわりがシンプルにされたことによる変更なので、この事自体は歓迎すべきことです。しかし、iOS SDK 6.0を利用したXcodeでUITableViewControllerのサブクラスを作成すると、デフォルトでこの新しいメソッドが呼ばれるコードがテンプレートに書かれます。それをそのまま対応していないiOS 5.1以前で利用しようとすると"unrecognized selector sent to instance"
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く