Xcode
XcodeのAsset Catalog どうやって画像をローカライズするのですか、
ローカライズ項目がないっぽいのでapple エンジニアいろいろいじっててでき
ないと気づきほかの3人メーバを連れてきて、いろいろ話したあとAsset Catalog
画像ローカライズできないのはバグですって伝えられた。。
Xcode7 のUI test機能hybridアプリでも使えますか?
使えるはず。使えないならバグ。 -> かっこいい..
XcodeなぜBDD test framework作らないですか?
質問聞いたアプリエンジニアちょっとBDDがわからなかったので、
bddのwikiと自分が書いたbddを見せて、bddの書き方のほうが読み
やすいよって伝えた。そして彼はXcodeチームはエンジニアがほしい
機能を募集?してますよ、ちゃんとした理由とか書けば受理されるかも
しれない。あとその機能がほしい人が多ければ、受理されやすい。
WatchKit
MusicアプリみたいなAirplay 機能どうやって作る?
現状そういうAPIはない。reportしてください。
Swift
Swift2.0のError Handling,なぜfuncのthrowにはどういうerrorを返すか定義できないのですか?
javaのexceptionの話し混ざりながらとかいろいろ話したけど、
自分英語が下手でうまく理解できないかった。。><
Swiftのoptionalの値有無判定いろんな書き方があるけど、どれがおすすめですか? 僕としてoptional本質はenumなので.Noneでチェックしたほうがいい
code:
let someOptional: Int? = 42
if someOptional != nil{}
if someOptional != .None{}
if let _ = someOptional{}
!= nilでチェックしたほうがいい。swiftのoptionalはenumとはいえ
、結構特殊なenumですし、言語使ってる人側としてnilのほうが直観的。
追加質問でなんでhasValue()みたいなfunc作らないですがって聞いたら、
今も三つ判定手法あるのに、またfunc作ったとしてもだれも使わない、
ややこしくなるだけ。 -> ご、ごめんなさい><
Swift official style guideみたいなものはありますか
Swiftチームリーダの人が自分と他の同僚前からちょっと書いたのだが、いろな事情でなしになった。
現状そういうものはない。-> 自分とってちょっと残念
Class extensionで failable initializerどう作る?
完成Code:
private protocol NSDateType {
typealias Selfy
static func build(iso8601String: String) -> Selfy?
}
private extension NSDateType where Selfy == Self {
init?(iso8601String: String) {
let r = Self.build(iso8601String)
if r == nil {return nil }
self = r!
}
}
extension NSDate : NSDateType {
static func build(iso8601String: String) -> NSDate? {
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZ"
dateFormatter.locale = NSLocale(localeIdentifier: "en_US_POSIX")
return dateFormatter.dateFromString(iso8601String)
}
}
let date = NSDate(iso8601String: "2010-08-31T23:04:26.000Z")
protocol extension使ってコンバイラを騙して、通らせという裏手。。
これ使えるけど、難しすぎるので、reportしたほうがいいよって言われた。
デザイン
Apple Watch
paging使ってそれぞれのページ違うコンテンツ表示しても大丈夫ですか
Ok
iOSアプリみたいにlistから詳細表示より最初は詳細画面を表示して、menuでリスト表示したほうがいいと自分は思ってて、なぜというとApple Watch画面Loadingが遅いので、これでユーザーが早くコンテンツを見せれる。このアプローチはどうですか?
コンテンツによる。menuはforce touchでしか表示されないので、
気づきにくい。あとLoading遅い問題、watchOS2で解消される。
リスト数が少ないならpaging使ったほうがいい、多い場合は素直にtable.
どうしたらHamburger menuを消滅できます?
- ユーザーにとってどうでもいい項目を削除。項目できる限り絞る
- 優先度高い5つの項目をtabにする. 最後のtab More使ってもいいが、できる限りMore tabは使わないように。
- 残りの優先度低い項目をページに分散する。-> App Storeのおすすめページを例に説明した。