Iphone UIBarButtonItem-无效的抽头发光大小
我在按下UIToolbar控件中的UIBarButtonItem时出现了一个奇怪的发光问题。当我将Iphone UIBarButtonItem-无效的抽头发光大小,iphone,ios,uitoolbar,tap,Iphone,Ios,Uitoolbar,Tap,我在按下UIToolbar控件中的UIBarButtonItem时出现了一个奇怪的发光问题。当我将ImageInsets属性设置为4,0,0,0时,每次点击它时,光晕都会变小。下面是一个例子: 如果不设置imageInsets,则不会出现问题。UIToolbar中的所有按钮都会出现此问题。我没有踢踏手。制作更大的插图(例如8,0,0,0)会更快地产生相同的结果 我很感激任何关于如何解决这个问题的建议 编辑:将代码更改为Objective-C,因为问题也会在没有MonotTouch的情况下再现
ImageInsets
属性设置为4,0,0,0
时,每次点击它时,光晕都会变小。下面是一个例子:
如果不设置imageInsets,则不会出现问题。UIToolbar中的所有按钮都会出现此问题。我没有踢踏手。制作更大的插图(例如8,0,0,0)会更快地产生相同的结果
我很感激任何关于如何解决这个问题的建议
编辑:将代码更改为Objective-C,因为问题也会在没有MonotTouch的情况下再现
它是默认的单视图项目。我使用storyboard designer添加了一个工具栏和一个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
如果没有代码,很难看出问题所在。你介意把代码的相关部分贴上去吗?我认为这与你反复增加顶部插图4有关。。。我将编辑我的答案,一旦我看到相关的代码 编辑:所以我不熟悉Monotouch。。。从您粘贴的代码中,我假设构造函数确实被调用过一次。我认为Monotouch框架中可能存在一个缺陷,导致每次点击按钮时imageinsets都会移动指定的量(向下4)。我将按以下顺序检查:
抱歉,我不熟悉monotouch,因此无法提供更多帮助。除非您被锁定在使用Monotouch,否则我强烈建议您学习本机Objective-C并以本机方式编程,以避免此类小陷阱和麻烦。Objective-C和iOS SDK非常优雅。最后,我要求设计师调整图像大小,从而消除imageSize属性的使用。使用Objective-C在XCode中创建应用程序时也会发生同样的情况。是的(8,0,0,0)会使光晕崩溃更快。没有附加代理。它是默认的单视图项目。我使用storyboard designer添加了一个工具栏和一个UIBarButtonItem。为按钮创建了一个出口。方法在问题正文中,因为网站不允许我在此处发布。我不熟悉故事板,但我知道您可以从Interface Builder中指定标题/图像插入。尝试从IB内设置图像插入,我认为这将解决您的问题。还要确保初始化后没有重新创建行/按钮。