셀을 클릭 할 때 나타나는 팝업이 있습니다. 이 Popover에는 행이있는 TableView가 있습니다. 해당 행을 클릭하면 애니메이션과 함께 나타나는 세 개의 새로운 행이 생깁니다. 그 애니메이션을 삭제하고 싶습니다. 가능한가?Popover에서 TableView 선택에서 애니메이션을 비활성화하는 방법?
extension PlanningActionTableViewController
{
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int
{
return numberOfRows()
}
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell
{
let cell = tableView.dequeueReusableCellWithIdentifier("ActionCell", forIndexPath: indexPath) as!PlanningActionCell
// Info cells
if registration == nil
{
if slot.registrations.count > indexPath.row
{
let contact = slot.registrations[indexPath.row].contact
let name = contact.lastname + " " + contact.firstname
cell.actionLabel.text = (name.characters.count > 1 ? name : "Réservation en cours")
cell.accessoryType = .DisclosureIndicator
cell.imageSymbol.image = UIImage(named: "picto.user.default")
return cell
}
cell.actionLabel.text = "Ajouter"
cell.accessoryType = .None
cell.imageSymbol.image = UIImage(named: "picto.user.add")
return cell
}
// Actions cell
switch indexPath.row
{
case 0:
cell.actionLabel.text = "Détails"
cell.accessoryType = .None
cell.imageSymbol.image = UIImage(named: "picto.user.details")
case 1:
var state = "Non"
if let contact = registration?.contact
{
state = (contact.isArrived ? "Oui" : "Non")
}
cell.actionLabel.text = "Est arrivé: " + state
cell.accessoryType = .None
cell.imageSymbol.image = UIImage(named: "picto.user.valid")
default:
cell.actionLabel.text = "Supprimer booking"
cell.actionLabel.textColor = UIColor.redColor()
cell.imageSymbol.image = UIImage(named: "picto.user.delete")
cell.accessoryType = .None
}
return cell
}
}
NumberOfRows : 비디오
func numberOfRows() -> Int
{
if registration == nil
{
return slot.subslotsCount
}
return 3
}
예 :
<iframe src="//gifs.com/embed/1wvE6R" frameborder="0" scrolling="no" width='480' height='220.7665505226481' style="-webkit-backface-visibility: hidden;-webkit-transform: scale(1);" ></iframe>
우선, 어떤 종류의 애니메이션을 의미합니까? 새 행의 팝 오버 또는 모양을 확장하거나 둘 다? 둘째,'cellForRowAtIndexPath' 메소드 자체는 행 애니메이션을 담당하지 않습니다. 데이터 소스를 확장하는 코드를 추가하십시오. 즉, 새 행을 삽입하거나'numberOfRows' 값을 변경하십시오. –
새 행의 모양입니다. 그 세 줄 (또는 그 이상)을 보여 주면 아래쪽으로 증가하는 popover의 애니메이션이 있습니다. – Claudio
애니메이션을 사용하지 않으려면 원하는 팝 오버의 컨텐츠 크기를 계산하고 수동으로 설정하고 애니메이션없이 데이터 소스 업데이트를 트리거하십시오. –