反转 UIBarButtonItem“播放”以用作后退按钮?
Posted
技术标签:
【中文标题】反转 UIBarButtonItem“播放”以用作后退按钮?【英文标题】:Inverting UIBarButtonItem "Play" for use as a Back Button? 【发布时间】:2010-07-07 23:56:09 【问题描述】:好的,很简单。
我正在编写一个简单的网络视图,并提供一些类似 Safari 的导航控件。
播放似乎是前进按钮的明显选择,但我也希望有一个后退按钮,就像在几个 Apple 和第三方应用程序中看到的那样。
有没有办法反转图标,使其指向后方,或者所有使用此设置的应用程序都使用图像来复制此功能?
【问题讨论】:
【参考方案1】:Unicode 是你的朋友。
创建一个 UIBarButtonItem(在 Interface Builder 或代码中)并将其设置为“自定义”,您可以在其中为按钮输入文本。
现在使用这些 Unicode 字符来模拟后退和前进按钮:
◄ 和 ►
我在我的应用程序中使用它,它看起来很棒。
【讨论】:
这对我有用——非常感谢。您是否遇到过这种技术的任何缺点? 在较旧的 ios (3.0) 上,它具有不同的大小。除此之外效果很好。【参考方案2】:我知道这个问题很久以前就已经回答了,但只是补充一下......
是的,您可以使用 Unicode,但它看起来与标准 ios 按钮不同。如果你对匹配 ios 外观有严格的要求,那么你至少需要为后退按钮制作一个图像,在这种情况下,只需下载播放图像并翻转它。
UIImage *image = [UIImage imageNamed:@"backButton.png"];
UIButton *btnBack = [UIButton buttonWithType:UIButtonTypeCustom];
[btnBack setImage:image forState:UIControlStateNormal];
btnBack.frame = CGRectMake(0.0, 0.0, image.size.width, image.size.height);
UIBarButtonItem * btnItem = [[UIBarButtonItem alloc] initWithCustomView:btnBack];
[btnItem addTarget:self action:@selector(btnClicked:) forControlEvents:UIControlEventTouchUpInside];
// add it to your bar
self.navigationItem.leftBarButtonItem = btnItem;
(在没有拼写检查的情况下编写...所以要小心可能导致的拼写错误)
// 按钮图像在这里。 http://developer.apple.com/library/ios/#documentation/userexperience/conceptual/mobilehig/IconsImages/IconsImages.html
【讨论】:
【参考方案3】:您可以使用atPeek 从使用它的应用程序中提取播放按钮 png,然后使用任何图像处理程序来翻转它。
【讨论】:
以上是关于反转 UIBarButtonItem“播放”以用作后退按钮?的主要内容,如果未能解决你的问题,请参考以下文章
touchesBegan 时 UIBarButtonItem 的扩展
无法将 NSMutableArray 类型的值分配给 UIBarButtonItem 类型