行削除の例は通常textFieldDidEndEditing
または他のジェスチャ/ユーザ入力メソッドを実装します。独立して、最下行から始まるUITableView行を自動的にフェードアウトさせます
私のバージョンの自動削除機能は、alphaを指定してanimateWithDurationを使用することです。シンプルで見栄えがいいです。
課題は、私が独立して任意のユーザのスクロールやユーザー入力のNSTimer
またはanimateWithDuration
を経由して自動的にこのをやりたいです。最新の一番下の行から始まり、テーブルの上に移動するとアルファ0のままにしておくだけで、単純なフェードアウトです。
現在、行がすでにフェードアウトしているため、アプリケーションを開いたときに行が表示されません。これはいい。この問題は、ユーザーが新しい投稿を送信するたびに発生し、すべての「不可視の」行がアルファ1から再び表示され、その後すべてが一緒にフェードアウトします。私が代わりにcellForRowAtIndexPath
を使用する必要があるので、私はそれは
アルファを0に消えていくだけで、新たな一番下の行は、アルファ1を持つアルファ0に滞在するために、前の行以上必要
はそれですか?またはdequeueReusableCellWithIdentifier
メソッドを使用する必要がありますか?
override func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
let cell = super.collectionView(collectionView, cellForItemAtIndexPath: indexPath) as! CHEFTALKRecipeViewCell
let recipe = recipes[indexPath.item]
if recipe.posterId == posterId {
cell.textView!.textColor = UIColor.blackColor()
// STEP 1
cell.contentView.alpha = 1
} else {
// do something
}
return cell
}
// STEP 2
override func collectionView(collectionView: UICollectionView, willDisplayCell cell: UICollectionViewCell, forItemAtIndexPath indexPath: NSIndexPath) {
UIView.animateWithDuration(2.0) {
cell.contentView.alpha = 0
}
}