HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios – 将UiBarButtonItem上的UIImage从标识符更新为图像大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我目前正在为 IOS申请,但我无法更改图片……真可惜……

情况是这样的
我有一个包含我的项目的工具栏,其中一个项目是根据标识符“Play”创建的播放按钮.所以我有没有问题的播放按钮.现在我只想在点击项目然后再次切换等时将其更改为暂停图像.
所以我喜欢我的.h项目给我:

@property (weak,nonatomiC) IBOutlet UIBarButtonItem *play;

我尝试了很多我在这个网站上找到的答案,但没有一个能对我的案子起作用:/
我尝试的最后一个是这样的

UIButton *button1=[UIButton buttonWithType:UIButtonTypeCustom];
[button1 setFrame:CGRectMake(10.0,2.0,45.0,40.0)];
[button1 addTarget:self action:@SELEctor(showLeft:) forControlEvents:UIControlEventTouchUpInside];
[button1 setImage:[UIImage imagenamed:@"pause.png"] forState:UIControlStateNormal];
UIBarButtonItem *button = [[UIBarButtonItem alloc]initWithCustomView:button1];
self.play = button;

我也尝试过:

self.play.customView = button1;

但是它们都没有真正起作用,我可以通过这样做来获得图像

self.view = button1;

但是在屏幕中间只有图片(所以UIImage的创建是可以的)所以….

(如果你也可以告诉我如何使用标识符返回游戏,那么非常感谢非常有用)

谢谢你的帮助.

解决方法

我认为这应该有效.
-(IBACtion)buttonClick:(UIBarButtonItem *)sender {

    if ([[sender BACkgroundImageForState:UIControlStateNormal barMetrics:UIBarMetricsDefault] isEqual:[UIImage imagenamed:@"Play.jpg"]]) {
        [sender setBACkgroundImage:[UIImage imagenamed:@"Pause.jpg"] forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
    }else{
        [sender setBACkgroundImage:[UIImage imagenamed:@"Play.jpg"] forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
    }
}

当然,您必须最初(在viewDidLoad中)将背景图像设置为“Play”图像才能使其生效.

编辑后:

如果你想使用系统播放和暂停按钮,据我所知,你必须更换按钮.我认为没有办法改变图像.所以,我这样做了.该按钮在IB中设置了插座playPauseButton和动作playClick.我还为工具栏(toolBar)做了一个出口.

-(IBACtion)playClick:(UIBarButtonItem *)sender {
    UIBarButtonItem *pause = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemPause target:self action:@SELEctor(pauseClick:)];
    NSMutableArray *tbItems = [self.toolBar.items mutableCopy];
    [tbItems removeObject:self.playPauseButton];
    self.playPauseButton = pause;
    [tbItems addObject:pause];
    self.toolBar.items = tbItems;
}

-(void)pauseClick:(UIBarButtonItem *)sender {
    UIBarButtonItem *play = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemPlay target:self action:@SELEctor(playClick:)];
    NSMutableArray *tbItems = [self.toolBar.items mutableCopy];
    [tbItems removeObject:self.playPauseButton];
    self.playPauseButton = play;
    [tbItems addObject:play];
    self.toolBar.items = tbItems;
}

大佬总结

以上是大佬教程为你收集整理的ios – 将UiBarButtonItem上的UIImage从标识符更新为图像全部内容,希望文章能够帮你解决ios – 将UiBarButtonItem上的UIImage从标识符更新为图像所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。