frage mich, ich individuell auf die UIBarButtonItems die folgende Art und WeiseWie iOS ein Farbverlauf auf UIBarButtonItem-Bild festlegen?
+ (UIBarButtonItem *)createBarButtonItemWithTitle:(NSString *)t target:(id)tgt action:(SEL)a
{
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
UIImage *buttonImage = [[UIImage imageNamed:@"blabla.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 10, 0, 10)];
CGRect buttonFrame = [button frame];
buttonFrame.size.width = 35;
buttonFrame.size.height = buttonImage.size.height;
[button setFrame:buttonFrame];
[button setBackgroundImage:buttonImage forState:UIControlStateNormal];
[button addTarget:tgt action:a forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *buttonItem = [[UIBarButtonItem alloc] initWithCustomView:button];
return buttonItem ;
}
Aber jetzt, ich habe nicht die Schattierung/Glanzeffekt auf die Schaltfläche Hintergrundbild ....
Gibt es eine Möglichkeit zu habe es automatisch gemacht, oder muss ich es programmatisch machen?
EDIT:
Bitte teilen Sie einen Screenshot des Standard 'UIBarButtonItem', wo Sie es nicht nur mit einem Bild tun können. –
ok, wie mit dem Bild gezeigt, keine Schattierung/Glanz mehr. Es ist wahrscheinlich das normale Verhalten, ich frage mich nur, ob ich iOS dazu bringen kann, es automatisch zu machen ... – Alex
Wie ich sehe, haben Standardtasten die gleiche Höhe, beachten Sie, wie Glanzeffekt aussieht - es ist immer horizontal (so weit ich mich erinnern kann)). In diesem Fall sollten Sie den Glanzeffekt am Bild hinzufügen und ohne Qualitätsverlust skalieren lassen (mit Einfügungen für die Rand- und Eckbereiche). Funktioniert schnell, sieht gut aus, ich sehe keine Notwendigkeit, einen speziellen Code dafür zu verwenden oder sogar zu machen. –