Objective-C
標準のUIButtonのSystemだとハイライトが文字が白くなるだけなので、それをUITableViewCellっぽくするというtipsです。 実装方法は、UIButtonのサブクラスを作ってStoryboardでカスタムクラスで指定するだけです。 1. UIButtonのサブクラスを作る @interface…
iPad用のアプリを作るときの話です。 iPadのsize classは縦向きも横向きもRegular/Regularってことで、そのsize classでせっせと画面を作ってて、iOS8のSimulatorだとちゃんと表示されてました。それで2画面ぐらい作ったあと、ふと、iOS7のSimulatorで動かし…
UICollectionViewCell上のViewにAutoLayoutをしたら下記のようなwarningが出てAutoLayoutが効きません。環境はiOS8、Xcode6です。 SampleApp[3298:353432] Unable to simultaneously satisfy constraints. Probably at least one of the constraints in the …
画面の回転のイベントで、willRotateToInterfaceOrientation:duration:がありますが、iOS8からはdeprecatedになっています。で、代わりに、viewWillTransitionToSize:withTransitionCoordinator:を使えと書いてあるんですが、ヘッダファイルのコメントにsupe…
間違ってたのでいろいろ追記 Xcode6でUIViewControllerのinterfaceOrientationプロパティを使うとiOS 8.0からdeprecatedですよのwarningがでます。 でも、代わりに判断できるプロパティがiPadだと分からないって話です。誰か教えて ※ 追記1 statusBarOrienta…
Objective-Cならこう書くよね。 // クラスメソッド NSDate *date1 = [NSDate date]; // インスタンスメソッド NSDate *date2 = [[NSDate alloc] init]; // objcではこれはあんまり使わないけど じゃあSwiftは? var date1 = NSDate.date() var date2 = NSDat…
1. Beaconに関するCLLocationManagerを作成する // 以下のメソッドの内容をinit系の処理で呼び出す - (void)initLocaitionService { // CLBeaconRegionを作成 // このとき、ProximityUUIDは、beacon製品で提供されたUUIDを使用する。 // identifierについて…
プロパティにアクセスするときに、_hogeなのか、self.hogeなのか統一した方がよくて、readonlyのプロパティだとか、setter、getterがよく分かってないなら基本的にself.hogeでアクセスする。 やたらとNSLogの書き残しが多いから、ちゃんと自分が見たいログが…
Clean table view code - Lighter View Controllers - objc.io issue #1 の訳です。 TableViewはiOSアプリにおいて色々なことができるパーツです。 それゆえ、直接的、あるいは、間接的なテーブルビューのタスクに関するコードが多くなってしまいます。例え…
objc.io何がいいかと言うと、数日間APIをいじくり回してやっとわかる使い方のコツとか内部的な動きがサラっと書いてたり、実装のアプローチを複数紹介してたり、実際にアプリにいかすとこにトコトンフォーカスしてて、なんかスゲー編集力を感じる。— Taku Ok…
セルの左側20pxぐらいぶんだけ、右側にずれちゃうんだけど、Storyboardのseparator Insetで解決しました。 直し方は、stackoverflowに書いてありました。 uitableviewcell - Is there a way to make UITableView cells in iOS 7 not have a line break in th…
フルパス名をキーに利用していたら・・・ ダウンロードした画像をキャッシュするクラスの設計と実装について - 24/7 twenty-four seven のエッセンスを参考にしながら、画像をキャッシュするアプリを作っていてはまったのでメモ。 画像のフルパス名のハッシ…
1行ごとに色を変えてたり、セルに行番号とか表示してるとdeleteRowsAtIndexPaths:だけでは、表示が更新されないことに気づきreloadData呼んだ。 でも、reloadData呼ぶと削除アニメーションが消えちゃうのであれーどうやるのかなーと思って調べたけど、意外と…
※ 今回は試しにQiitaにも投稿してみました。 Aspects Objective-Cでインターセプター入れて横断的に処理入れてみたいなことってしたいなと思う場面はあったけど、共通処理を行うクラスを使ってそれを継承するみたいなやり方してた。共通の処理ってどんなもの…
iphone_dev_jp 東京 feat. Ben Zotto (Penultimate開発者) - connpass に行ってきました。 英語の発表だったけど、同時通訳の人がうまくて結構理解できました。 (まぁ、こんな画像最適化するようなアプリ作ることはないとは思うけどw) 画像とは関係ない質…
色々やり方はあるかもしれないけど、これでいいか。 整数は小数点をもたないので切り上げても、切り捨てても同じ値になるのを利用。 - (BOOL)isInteger:(NSDecimalNumber *)num { // 少数第1位を切り捨て NSDecimalNumber *floorNum = [num decimalNumberByR…
XCTestでtestがfailedしているのに、XCodeはTest Succeedと元気に通知してくるので、 なんじゃらほいと思ってたら、test名に日本語を使っていたのがダメな原因でした。 テスト名が半角英語の場合 - (void)testFail { XCTFail(@"失敗"); } このように、ちゃん…
iPhoneアプリから(not safari)socket.ioと通信したいなーと思っていて、 良い記事をみつけたので早速マネしてみました。iPhoneアプリでNode.js - webネタ基本的には socket.ioとObjective-Cで通信したい そのためにはObjective-C側では、pkyeck/socket.IO-ob…
CGPDFBoxが一体何を表してるか分からなかったけど、全部試してみたら何となく分かったかも。 http://developer.apple.com/library/ios/#documentation/GraphicsImaging/Reference/CGPDFPage/Reference/reference.html全種類で試して、CGPDFPageGetBoxRectし…