Tag: uibarbuttonitem

使用uinavigation栏左侧的button发出

我在导航栏的左侧有一个button。 我也有一个靠近那个button的UIButton。 现在,当我点击导航栏下面的button时,很多情况下点击了NAB栏上的button。 任何想法为什么发生这种情况? 有什么build议么 ? 谢谢。 图片:如果你点击红色button内的任何地方,导航栏的左上angularbutton仍然被按下。 导航栏button代码: UIButton *leftButton = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 25, 25)]; [leftButton setShowsTouchWhenHighlighted:NO]; [leftButton setImage:[UIImage imageNamed:@"deals.png"] forState:UIControlStateNormal]; [leftButton setImage:[UIImage imageNamed:@"deals_down.png"] forState:UIControlStateSelected]; [leftButton setImage:[UIImage imageNamed:@"deals_down.png"] forState:UIControlStateHighlighted]; [leftButton addTarget:self action:@selector(dealsButtonPressed:) forControlEvents:UIControlEventTouchDown || UIControlEventTouchUpInside]; self.navigationItem.leftBarButtonItem = [[[UIBarButtonItem alloc] initWithCustomView:leftButton] autorelease]; [leftButton release];

使用UIAppearance自定义UIBarButtonItem“完成”样式和“简单”样式

我知道如何使用-setBackgroundImage: forState: barMetrics:来自定义UIBarButtonItem ,但是我想为UIBarButtonItemStyleDone和UIBarButtonItemStylePlain使用不同的图像。 有没有办法使用UIAppearance协议来完成这个UIAppearance ? 或者我每次需要“完成”样式button时都必须设置图像? (我试图用下面的代码搞乱: [[UIBarButtonItem appearance] setBackgroundImage:image forState:UIControlStateNormal barMetrics:UIBarButtonItemStyleDone]; 但是,这只是用“完成”图像设置每个栏button。) 谢谢!

在导航栏中放置基于UIBarButtonItem的自定义视图,而不使用默认水平填充

如何将自定义左侧和右侧UINavigationBar项左侧和右侧的水平填充删除? 似乎默认情况下,iOS会设置约10个填充点。 我正在自定义左侧和右侧导航栏button(我已经放弃了试图设置自己的backButtonItem,所以我只是使用leftBarButtonItem)。 在这两种情况下(左或右),按这些自定义button表示苹果似乎保留左边的左边的BarButtonItem,右边的右边的BarButtonItem; 不pipe宽度如何,我把UIButton的自定义背景和图像属性放置在左/右栏button项目中作为其自定义视图。 由于UIBarButtonItems没有“框架”,我可以访问,我不能像他们的超级视图,像我可以正常的UIViews。 任何build议如何删除这个默认的填充? 看到附加的屏幕截图看到我试图减less到零宽度的位。 在屏幕截图中,加号图标显示向右移动,因为我给它插入; 但突出显示的背景图像,也可能是使用该插图,在右侧被截断)。 请参阅https://skitch.com/starbaseweb/rj2e5/ios-simulator 作为参考,这里是我如何创build我的自定义UIBarButtonItem(在这种情况下,它是正确的button): – (UIBarButtonItem *)customAddButtonItemWithTarget:(id)target action:(SEL)action { UIButton *customButtonView = [UIButton buttonWithType:UIButtonTypeCustom]; customButtonView.frame = CGRectMake(0.0f, 0.0f, 45.0f, 44.0f); [customButtonView setBackgroundImage: [UIImage imageNamed:@"bgNavBarButton-OutsideRight-Normal.png"] forState:UIControlStateNormal]; [customButtonView setBackgroundImage: [UIImage imageNamed:@"bgNavBarButton-OutsideRight-Highlighted.png"] forState:UIControlStateHighlighted]; [customButtonView setImage: [UIImage imageNamed:@"bgNavBarButton-Add-Normal.png"] forState:UIControlStateNormal]; [customButtonView setImage: [UIImage imageNamed:@"bgNavBarButton-Add-Highlighted.png"] forState:UIControlStateHighlighted]; [customButtonView addTarget:target action:action forControlEvents:UIControlEventTouchUpInside]; UIBarButtonItem *customButtonItem = […]

如何将UIImage / CGImageRef的alpha通道转换为掩码?

我怎样才能提取UIImage或CGImageRef的alpha通道,并将其转换成我可以使用CGImageMaskCreate的掩码? 例如: 基本上,给任何图像,我不关心图像内的颜色。 我想要的只是创build一个代表alpha通道的灰度图像。 这个图像可以用来掩盖其他图像。 当你提供一个图标图像的时候,这个UIBarButtonItem的一个例子是。 根据苹果文件,它指出: 显示在栏上的图像来源于该图像。 如果这张图片太大而无法放在栏上,则会缩放。 通常,工具栏和导航栏图像的大小是20 x 20点。 源图像中的alpha值用于创build图像 – 不透明值将被忽略。 该UIBarButtonItem采取任何图像,只看阿尔法,而不是图像的颜色。

以编程方式创build一个UIBarButton

我有一个通常用类似下面的方式设置的酒吧button的数组: NSArray *leftButtonArray = [[NSArray alloc]initWithObjects: backBarButton, separator1,postBarButton, separator1, memeBarButton, separator1, pollBarButton, nil]; self.navigationItem.leftBarButtonItems = leftButtonArray; 不过,我想改变这些左边的button,而不是中心alignment。 任何人都知道我可以做到这一点? 提供一个例子或使用我的button来这样做将是一个加号。 谢谢!

如何在代码中调整UIBarButtonItem的大小

如何在代码中调整UIBarButtonItem的大小? 谢谢你的帮助!

在Swift中获取UIBarButtonItem的框架?

我怎么能迅速获得rightbarbuttonItem的框架? 我发现这个: UIBarButtonItem:我如何find它的框架? 但它说不能将NSString转换为UIView,或不能将NSString转换为string: let str : NSString = "view" //or type String let theView : UIView = self.navigationItem.rightBarButtonItem!.valueForKey("view")//or 'str' 目标是删除rightBarButtonItem,而不是添加一个imageView,并用淡出效果来移动它。 谢谢

自定义“按下”UIBarButtonItem背景

我试图为我的UIBarButtonItem设置自定义按下的图像,但似乎没有任何工作。 根据我的理解,下面的代码应该可以工作,但是尽pipe为高亮显示的状态设置了图像,按下button时看起来完全一样。 有任何想法吗? UIImage *barButtonBackground = [[UIImage imageNamed:ANBarButtonItemBackgroundImageName] resizableImageWithCapInsets:UIEdgeInsetsMake(5.0f,5.0f, 5.0f, 5.0f)]; UIImage *barButtonPressedBackground = [[UIImage imageNamed:ANBarButtonPressedImageName] resizableImageWithCapInsets:UIEdgeInsetsMake(5.0f,5.0f, 5.0f, 5.0f)]; [self.navigationItem.leftBarButtonItem setBackgroundImage:barButtonBackground forState:UIControlStateNormal barMetrics:UIBarMetricsDefault]; [self.navigationItem.rightBarButtonItem setBackgroundImage:barButtonBackground forState:UIControlStateNormal barMetrics:UIBarMetricsDefault]; [self.navigationItem.leftBarButtonItem setBackgroundImage:barButtonPressedBackground forState:UIControlStateHighlighted barMetrics:UIBarMetricsDefault]; [self.navigationItem.rightBarButtonItem setBackgroundImage:barButtonPressedBackground forState:UIControlStateHighlighted barMetrics:UIBarMetricsDefault];

为UINavigationController制作一个自定义后退button

我正在开发iOS 4.2+的应用程序。 我subclassed我的UINavigationController插入两个UIImageView ,并使导航栏外观自定义。 一切都很好,但我有一个小问题。 我创build了自定义的UIBarButtonItem并在我的视图控制器,我把他们: self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc]initWithCustomView:backButton]; 它的工作原理也是如此,但问题是,要做到这一点,我需要从以下位置调用它: – (void)viewDidAppear:(BOOL)animated ; 所以它只出现在animation之后,我可以看到非定制的button1秒之前定制的一个取代它。 (我试着viewWillAppear但没有在导航栏中追加) 我想知道你是否有解决scheme可以纠正这个问题。 PS:我从来没有使用IB,一切都是以编程方式。 来自法国的感谢! 编辑1:这里是没有显示什么viewWillAppear的代码: – (void)viewWillAppear:(BOOL)animated { [self setTitle:@"Jeu"]; //Bouton testflight TIFButton *testFeedbackButton = [[TIFButton alloc]init]; [testFeedbackButton setTitle: @"Envoyer un Feedback" forState:UIControlStateNormal]; [testFeedbackButton addTarget:self action:@selector(launchFeedback) forControlEvents:UIControlEventTouchUpInside]; UIBarButtonItem *testFeedback = [[UIBarButtonItem alloc] initWithCustomView:testFeedbackButton]; self.navigationItem.rightBarButtonItem = testFeedback; TIFBackButton *backButton = [[TIFBackButton […]

UIBarButtonItem上的自定义背景/透明背景?

这个效果如何实现? 代码片段非常受欢迎。 这可以在Notes应用程序和App Store上的其他应用程序中看到。 看起来,导航控制器上的button都是透明的,并显示导航控制器的自定义背景,或者他们自己有一个自定义背景适用于他们。 任何想法如何实现? 编辑: 以下是iPhone的iBooks应用程序示例。 正如你所看到的,不仅UIButtons,而且分段控件都有自定义的背景。 我在想,有一种方法可以将透明度/背景全局设置为不同的界面元素。 http://c0839932.cdn.cloudfiles.rackspacecloud.com/iBooks%201.1%20-%206.png