Quando si tenta di eliminare una nota nell'applicazione Note di iPhone, viene visualizzato un UIActionSheet. Il foglio è traslucido (ma non nero traslucido). Come si ottiene? È possibile rendere lo sfondo di UIActionSheet un determinato colore?Sviluppo iPhone: come creare sfondo colorato o traslucido per UIActionSheet?
risposta
Io di solito attuare i seguenti metodo delegato:
- (void)willPresentActionSheet:(UIActionSheet *)actionSheet
solo per fare un esempio. In questo caso io uso un allungato png come sfondo:
- (void)willPresentActionSheet:(UIActionSheet *)actionSheet {
UIImage *theImage = [UIImage imageNamed:@"detail_menu_bg.png"];
theImage = [theImage stretchableImageWithLeftCapWidth:32 topCapHeight:32];
CGSize theSize = actionSheet.frame.size;
// draw the background image and replace layer content
UIGraphicsBeginImageContext(theSize);
[theImage drawInRect:CGRectMake(0, 0, theSize.width, theSize.height)];
theImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
[[actionSheet layer] setContents:(id)theImage.CGImage];
}
e questo è il risultato: alt text http://grab.by/4yF1
Mi sembra nero (nota: uso 2.2.1). L'unica ragione per cui c'è un colore è a causa del giallo dietro di esso.
Un'opzione sarebbe quella di utilizzare lo sfondo nero trasparente e scoprire le dimensioni e la velocità del foglio di azione. Quindi crea una vista e animala nello stesso momento in cui mostri il foglio di azione, appena sotto di esso, per dargli una tinta diversa rispetto al colore naturale dietro al foglio di azione. Dovresti rendere la visualizzazione a colori anche traslucida in modo da poter vedere anche quella dietro.
Non sono sicuro che sia possibile, ma si potrebbe anche provare a regolare anche l'opacità del foglio di azione.
Regolazione del l'opacità del foglio d'azione influisce anche sui pulsanti. – Boon
Se date un'occhiata all'applicazione note, noterete che i pulsanti non sono opachi al 100%. –
È possibile regolare l'opacità impostando il valore alfa. Interface Builder consente di modificare direttamente il valore, ma nel codice credo che si dovrebbe fare:
[[myActionSheet view] setOpaque:NO];
[[myActionSheet view] setAlpha:0.5];
non sono sicuro se è necessario la chiamata setOpaque o no - credo che viene utilizzato per aiutare a ottimizzare le prestazioni, come l'iPhone non tenterà di rendere nulla nascosto dalla vista opaca.
Non è troppo difficile. È possibile utilizzare il seguente codice:
CGSize mySize = myActionSheet.bounds.size;
CGRect myRect = CGRectMake(0, 0, mySize.width, mySize.height);
UIImageView *redView = [[[UIImageView alloc] initWithFrame:myRect] autorelease];
[redView setBackgroundColor:[UIColor colorWithRed:1.0 green:0.0 blue:0.0 alpha:0.5]];
[myActionSheet insertSubview:redView atIndex:0];
Basta fare in modo di presentare le UIActionSheet prima di fare questo o la dimensione solito essere impostato. Questo lo rende sorta di brutto, ma si potrebbe fare qualcosa di simile:
[myActionSheet showInView:self.view];
if (!redAdded) {
redAdded = YES;
//THE ABOVE CODE GOES HERE
}
Se si vincola la dimensione alla vista, non si dovrebbe eseguire la parte successiva. Dovevo anche sostituire xey con altezza e larghezza: CGSize mySize = self.view.bounds.size; CGRect myRect = CGRectMake (0, 0, mySize.height, mySize.width); – StuartM
Utilizzo - (void) willPresentActionSheet: (UIActionSheet *) actionSheet è un aggancio migliore in generale –
È inoltre possibile utilizzare un'immagine anziché un colore impostando una UIImage su UIImageView: [actionBackground setImage: [UIImage imageNamed: @ "captainplanet. png "]]; – ninehundredt
È possibile utilizzare il codice qui sotto:
actionSheetObj.actionSheetStyle=UIActionSheetStyleBlackOpaque;
o
actionSheetObj.actionSheetStyle=UIActionSheetStyleBlackTranslucent;
Grazie, questo è esattamente quello che stavo cercando – GeneCode
actionSheetObj.actionSheetStyle=UIActionSheetStyleBlackTranslucent;
- 1. Come posso creare un UIViewController modale traslucido?
- 2. GLSurfaceView - come rendere sfondo traslucido
- 3. Sviluppo per iPhone su PC?
- 4. Come posso creare un testo colorato?
- 5. iPhone UIActionSheet auto-rotante non funzionante
- 6. Sviluppo di giochi per Iphone
- 7. Lingue per lo sviluppo iPhone
- 8. Come cambiare la sequenza del pulsante in UIActionsheet in iPhone?
- 9. Iphone/ipad sfondo immagine
- 10. Database traslucido
- 11. Come impostare l'immagine di sfondo per l'app iphone in PhoneGap
- 12. Preferenze IDE per lo sviluppo Apple/iPhone?
- 13. traslucido dialogo Tema per Holo
- 14. Tempo di sviluppo iPhone
- 15. Sviluppo di un'app tethering per iPhone privato
- 16. Sviluppo app per iPhone - Poche domande per principianti
- 17. Android: impostare un colore di sfondo e un'immagine di sfondo traslucido sull'attività
- 18. sviluppo iPhone su PC
- 19. Come utilizzare UIAlertController per sostituire UIActionSheet?
- 20. iPhone - NavigationBar Sfondo personalizzato
- 21. UISearchBar colorato come Contatti
- 22. iPhone App per lo sviluppo su Ubuntu
- 23. differenze nello sviluppo per iphone e ipad
- 24. Sviluppo di app per iPhone e Android
- 25. NSMutableDictionary con UIButton * come chiavi - Sviluppo iPhone
- 26. iPhone - UIButton - immagine di sfondo per disabili
- 27. Quando utilizzare PNG o JPG nello sviluppo di iPhone?
- 28. Forzare UIActionSheet per utilizzare un orientamento specifico
- 29. Come posso utilizzare lo sviluppo di TFS per iPhone?
- 30. Come impostare un filtro colorato per XWalkView?
Ehi, per favore potresti postare un link a quell'immagine?Sembra davvero bello, grazie e ottima soluzione per sostituire l'immagine di sfondo! – JonasG
questo non funziona per me !!! – Fay007