sto cercando di replicare questo al momento:di replica Google Search iOS schede di animazione
Se si ha familiarità con app di Google, sembra che un UICollectionView con un layout flusso personalizzato.
Sto espandendo una domanda che è stata chiusa con un po 'di codice aggiuntivo.
Here's the link to the other question.
Nella classe layout di flusso personalizzato, posso creare un effetto "pila" impostando un valore interlinea minimo negativo, e utilizzando il seguente:
- (NSArray *)layoutAttributesForElementsInRect:(CGRect)rect
{
NSArray *allAttributesInRect = [super layoutAttributesForElementsInRect:rect];
CGPoint centerPoint = CGPointMake(CGRectGetMidX(self.collectionView.bounds), CGRectGetMidY(self.collectionView.bounds));
for (UICollectionViewLayoutAttributes *cellAttributes in allAttributesInRect)
{
if (CGRectContainsPoint(cellAttributes.frame, centerPoint))
{
cellAttributes.transform = CGAffineTransformIdentity;
cellAttributes.zIndex = 1.0;
}
else
{
cellAttributes.transform = CGAffineTransformMakeScale(0.75, 0.75);
}
}
return allAttributesInRect;
}
La strisciata eliminare animazioni stanno funzionando bene, ma ho problemi a creare l'aspetto "impilato" e quindi trascinare solo 1 cella nella vista, mantenendo le carte rimanenti impilate, come quello che vedi sopra.
hey. Sto cercando di replicare lo stesso effetto, anche se con poco successo. Ho bisogno che le carte facciano parte di un UICollectionView/UITableView in modo che l'utente possa scorrere più di alcune carte come google. Ma posso assicurarti che il modo in cui Google ha creato quell'app non è con una vista di insieme. Ho controllato l'app in Reveal e fondamentalmente hanno fatto l'animazione usando solo viste. tuttavia ho anche bisogno di una vista colletion e l'unico modo in cui posso vederlo è avere due layout in cui è possibile animare la transizione. ci vuole molto più tempo anche se – alex
Un video o una gif dell'effetto che stai cercando ti aiuterà a ottenere una risposta. – Segev