2015-07-19 3 views
0

Я пытаюсь сделать ящик, который скользит из-под строки при нажатии. У меня все работает, за исключением того, что я не могу получить набор zposition. Я пробовал несколько разных способов, но не работал для меня. Я мог бы связать представление с нижней частью строки, но анимация все еще происходит поверх стека.zposition для UITableViewCell (swift)

Уверен, что мне не хватает чего-то очевидного. Возможно ли это?

Мой код здесь: https://gist.github.com/opswhisperer/14d8dbfb9f16dab8e1a8

(сутью обновляется с ответом thattyson в)

screenshot

+0

Вместо добавления нового вида вы могли бы просто оживить высоту ячейки, чтобы показать больше? Похоже на [этот вопрос] (http://stackoverflow.com/questions/460014/can-you-animate-a-height-change-on-a-uitableviewcell-when-selected) – thattyson

+0

Я мог (и я сделал), но это не тот эффект, который я после – rjb101

ответ

1

К счастью, похоже, UITableView перемещает выбранную ячейку в верхней части стека (Z-индекс) когда вы выберете его, чтобы вам просто нужна ссылка на ячейку:

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) { 
    tableView.deselectRowAtIndexPath(indexPath, animated: true) 

    let drawerView = UIView(frame: CGRectMake(0, 50, 200, 200)) 
    drawerView.backgroundColor = UIColor.purpleColor() 
    // TODO: set the frame based on the location of the selectedCell 

    let selectedCell = tableView.cellForRowAtIndexPath(indexPath) 
    selectedCell?.superview?.insertSubview(drawerView, belowSubview: selectedCell!) 

    // TODO: Add super slick animation 
} 

Ваше представление должно выглядеть корректно ind выбранная ячейка.

+0

ДА! Спасибо. Я также должен был удалить все, что я пробовал. – rjb101

Смежные вопросы