Domanda

Ho cercato tutti i post su Google e StackOverflow, ma semplicemente non riesco a risolvere questo puzzle. Sto cercando di ricreare l'effetto che l'ormai famosa app "Clear" fa quando aggiungo un nuovo compito. Hanno una sorta di animazione che dalla parte superiore appare un nuovo compito in una sorta di effetto 3D. La cosa speciale che hanno è che quando guardi da vicino gli angoli di fondo sinistro e destro rimangono sempre nello stesso posto.

In questo momento ho quanto segue: un UIVIE di 320x460 impostata al punto 0,0 e un UIVIE di 320x460 impostata al punto (0, -460). Quello che voglio è l'Uiview in alto per scendere nello stesso effetto cubo chiaro dall'alto. Questo è quello che ho finora:

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
    //startLoc is defined globally to remember the first position
    startLoc = [[touches anyObject] locationInView:self];
}

-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{
    CGPoint location = [[touches anyObject] locationInView:self];
    float difference = location.y-startLoc.y;         

    if(diff > 0 && diff < 90)
    {
        //Init the transform
        CATransform3D transform = CATransform3DIdentity;
        transform.m34 = perspective;
        //Rotate (radians is a degree-to radians function)
        transform = CATransform3DRotate(transform, radians(90-diff), 1.0f, 0.0f, 0.0f);
        //Also translate the view down        
        transform = CATransform3DTranslate(transform, 0.0f, 230+diff, 0.0f);
        //the 230 is necessary I think for the Anchorpoint but I'm not sure
        secondView.layer.transform = transform;
}    

}

Funziona in qualche modo ma non correttamente, non appena faccio la rotazione, la vista diventa più grande e gli angoli in basso a sinistra e sul diritto inferiore sono fuori dalla vista. Se riduco la vista e poi faccio una scala 3SS è anche incasinato. Ho già risolto il problema della metà dell'immagine che scompare impostando correttamente la zposizione dei livelli, ma questo è per quanto ne ottenga. Ho provato a utilizzare il codice di altri progetti, ma tutti i loro effetti del cubo 3D non sono gli stessi dell'app "Clear". L'unico che si avvicina è il progetto Icarousel ma non sono in grado di utilizzare il codice corretto dall'app, non riesco a farlo funzionare. Qualcuno può aiutarmi?

Nessuna soluzione corretta

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top