tintColor ist ein Lebensretter, es nimmt App auf eine ganz neue (einfache) Ebene.Kann die neue tintColor-Eigenschaft von UIImageview in iOS 7 zum Animieren von Bildern verwendet werden?
//the life saving bit is the new UIImageRenderingModeAlwaysTemplate mode of UIImage
UIImage *templateImage = [[UIImage imageNamed:@"myTemplateImage"] imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate];
imageView.image = templateImage;
//set the desired tintColor
imageView.tintColor = color;
Der obige Code wird „Farbe“ das nicht-transparente Teile des Bildes nach dem den Farbton des UIImageView, die für Core-Grafik für etwas Einfaches wie die ach so cool.No Notwendigkeit ist.
Das Problem, das ich gegenüberstelle, ist mit Animationen.
Fortsetzung aus dem obigen Code:
//The array with the names of the images we want to animate
NSArray *imageNames = @[@"1",@"2"@"3"@"4"@"5"];
//The array with the actual images
NSMutableArray *images = [NSMutableArray new];
for (int i = 0; i < imageNames.count; i++)
{
[images addObject:[[UIImage imageNamed:[imageNames objectAtIndex:i]] imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate]];
}
//We set the animation images of the UIImageView to the images in the array
imageView.animationImages = images;
//and start animating the animation
[imageView startAnimating];
Die Animation korrekt durchgeführt wird, aber die Bilder verwenden, um ihre ursprüngliche Farbe (das heißt die Farbe in der GFX-Bearbeitungsanwendung verwendet wird) anstelle des UIImageView des tintColor.
Ich bin dabei zu versuchen, die Animation selbst durchzuführen (indem ich ein wenig übertrieben mache, wie durch die Bilder und die Bildeigenschaft des UIImageView mit einer NSTimer-Verzögerung, so dass das menschliche Auge es fangen kann).
Bevor ich das tue, möchte ich fragen, ob die tintColor-Eigenschaft von UIImageView unterstützen soll, was ich damit machen will, d. H. Es für Animationen verwenden.
Danke.
Bitte versuchen Sie meine Antwort und sehen, ob das hilft. –
Haben Sie eine Lösung gefunden? – Alf