小编Pan*_*yue的帖子

删除iOS UIBarButtonItem的标题文本

我想要做的是从a的"后退"按钮中删除文本UIBarButtonItem,只在导航栏上留下蓝色V形符号.请记住,我正在为iOS 7开发.我尝试了几种方法,包括但不限于:

这是我不喜欢的图像方法(图像看起来不合适):

UIBarButtonItem *barBtnItem = [[UIBarButtonItem alloc]initWithImage:[UIImage imageNamed:@"iOS7BackButton"] style:UIBarButtonItemStylePlain target:self action:@selector(goToPrevious:)];
self.navigationItem.leftBarButtonItem = barBtnItem;
Run Code Online (Sandbox Code Playgroud)

我试过的另一种方法是这个,它根本不起作用(没有显示):

UIBarButtonItem *barBtn = [[UIBarButtonItem alloc]init];
barBtn.title=@"";
self.navigationItem.leftBarButtonItem=barBtn;
Run Code Online (Sandbox Code Playgroud)

我想要实现的是像iOS 7音乐应用程序中的后退按钮,它只有一个单一的V形.

谢谢.

uinavigationbar uibarbuttonitem uinavigationitem ios

197
推荐指数
13
解决办法
13万
查看次数

消除UINavigationBar和UIVisualEffectView之间的独特模糊边缘

目前,我的视图层次结构包括一个UIViewController(NOT UITableViewController),一个嵌套在视图控制器中的UITableView和一个位于UITableView前面的UIVisualEffectView(设置为Extra Light),与UINavigationBar的底部对齐.我想要实现的效果有点类似于App Store的分段视图.

但是,我注意到在导航栏和UIVisualEffectView之间的边界处出现了一个奇怪的模糊边缘,使视图看起来不一致,如下图所示(由红色圆圈突出显示):

在此输入图像描述

最理想的是,我更喜欢UIVisualEffectView与UINavigationBar的模糊完美融合.

谢谢.

uinavigationbar ios swift uivisualeffectview ios9

10
推荐指数
1
解决办法
480
查看次数

检测 NSString 是否为 Base64

我最近试图制作一个能够编码和解码 Base64 以及其他“语言”(如十六进制和二进制)的 iOS 应用程序。我试图制作一个自动解码器(能够自动检测“语言”)。但是,当我使用 Base64 时,自动解码器似乎无法检测到有效的 Base64,因为 Base64 字符串中有换行符。我的 Base64 检测代码如下所示:

-(BOOL)isBase64Data:(NSString *)input
{
    if ([input length] % 4 == 0) {
        static NSCharacterSet *invertedBase64CharacterSet = nil;
        if (invertedBase64CharacterSet == nil) {
            invertedBase64CharacterSet = [[NSCharacterSet characterSetWithCharactersInString:@"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="]invertedSet];
        }
        return [input rangeOfCharacterFromSet:invertedBase64CharacterSet options:NSLiteralSearch].location == NSNotFound;
    }
    return NO;
}
Run Code Online (Sandbox Code Playgroud)

只是为了提供更多信息,这是我在 NSString 中检测“语言”类型的方法。

-(NSInteger)detectType:(BOOL)base64 hexadecimal:(BOOL)hex binary:(BOOL)binary
{
    //Make sure the checking of characters are in this order!
    if (binary) {
        return 0; //Type 0 means binary
    }
    else if (hex) {
        return …
Run Code Online (Sandbox Code Playgroud)

base64 objective-c nsstring ios ios6

3
推荐指数
1
解决办法
1547
查看次数

删除所选 UIButton 中的突出显示

一个普通的 UIButton 应该是这样的(我知道按钮应该有与其他文本不同的颜色,但这是一个特例):

在此处输入图片说明

我想使用selectedUIButton的属性来确定它是否应该是粗体,并且我已经.Selected使用以下代码将控件状态设置为具有粗体文本:

let boldedOption = [NSFontAttributeName: UIFont.boldSystemFontOfSize(15), NSForegroundColorAttributeName: UIColor.whiteColor()]
signInButton.setAttributedTitle(NSAttributedString(string: "SIGN IN", attributes: boldedOption), forState: .Selected)
Run Code Online (Sandbox Code Playgroud)

但是,当我以编程方式将按钮的selected属性设置为 true 时,结果如下:

在此处输入图片说明

我最初想要实现的是,每当selectedUIButton的属性为 时,按钮都会具有粗体文本true,但在这种情况下,边框会妨碍,并且文本当然也不是白色的。

有什么方法可以根据用户输入的selected属性动态加粗 UIButton 的文本,还是我必须用布尔值将另一个不太优雅的解决方案组合在一起?

uibutton uicontrol ios swift

2
推荐指数
1
解决办法
1840
查看次数