我在按下UIToolbar控件中的UIBarButtonItem时出现一个奇怪的问题。当我将ImageInsets
属性设置为4,0,0,0
时,每次点击它时,光晕都会变小。这是一个例子:
如果我没有设置imageInsets,则不会出现此问题。 UIToolbar中的所有按钮都会出现此问题。我没有自来水处理程序。使更大的插入(例如8,0,0,0)更快地产生相同的结果。
我很感激有关如何解决问题的任何建议。
编辑:将代码更改为Objective-C,因为问题在没有MonoTouch的情况下重现。
这是默认的单一视图项目。我使用storyboard设计器将一个工具栏和一个UIBarButtonItem添加到其中。为按钮创建了一个插座。
#import "ViewController.h"
@implementation ViewController
@synthesize testBtn;
#pragma mark - View lifecycle
- (void)viewDidLoad
{
[super viewDidLoad];
UIEdgeInsets insets = UIEdgeInsetsMake(8, 0, 0, 0);
[testBtn setImageInsets:insets];
}
- (void)viewDidUnload
{
[self setTestBtn:nil];
[super viewDidUnload];
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);
}
@end
答案 0 :(得分:0)
如果没有代码,很难看出问题是什么。你介意发布代码的相关部分吗?我认为这与你反复增加顶部插图4有关...我会在看到相关代码后编辑我的答案。
编辑:所以我不熟悉Monotouch ......从你粘贴的代码中我假设构造函数确实被调用了一次。我在想Monotouch框架中可能存在一个错误,即每次点击按钮时,图像集都会移动指定的数量(下降4)。我会按以下顺序检查:抱歉,但我不熟悉monotouch,所以我无法提供更多帮助。除非您被锁定使用Monotouch,否则我强烈建议您学习本机Objective-C并进行本地编程以避免诸如此类的小陷阱和麻烦。 Objective-C和iOS SDK非常优雅。
答案 1 :(得分:0)
最后,我要求设计师调整图像大小,从而摆脱imageSize属性的使用。