Tag Archives: iOS

MPMediaPickerController で キャッシュされた曲まで表示される問題が解消したもよう

いままで、MPMediaPickerController で showsCloudItems を false にしてもキャッシュされている曲が混入して表示される(し、それらの曲は url を取得して利用したりできない)という問題があったのだが、iOS8.4 のミュージックApp に「オフライン再生可能な項目」のみを表示するオプションができていたのを見て、これは!と思ったとおり、MPMediaPickerController でもちゃんとローカル保存した曲のみが表示されるように改められていた。

UIPanGestureRecognizer でタッチの停止を検出

UIGestureRecognizerState.Ended で指が離れたのは検出できるが、指を触れたままドラッグを停止したのを検出したい。
タッチ位置が変化しているときだけイベントが生じているので、velocityInView は0になってくれない。

NSTimer で監視していないといけないのかと思っていたが、もっと簡単だった。
動いたらキャンセルされる NSTimer を作っておけば、動かないで一定時間たったときだけ発火する。

http://stackoverflow.com/questions/14955771/uipangesturerecognizer-recognize-if-object-is-held-fixed-in-an-area-and-gesture

UICollectionViewCell の中身が表示されない

Storyboard で Collection Reusable View 内に配置したサブビューたちが表示されない。
collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell 内で cell.subviews を見ても空っぽだし、cell.tag も Storyboard 上で設定したものになっていない。


UICollectionViewController のサブクラスを作るテンプレートで viewDidLoad() 内に
// Register cell classes
self.collectionView!.registerClass(UICollectionViewCell.self, forCellWithReuseIdentifier: reuseIdentifier)
とあるのを外してやるといい。