小编aqs*_*had的帖子

NSNonLossyASCIIStringEncoding返回nil

我正在iOS中使用默认的emojis.我能够使用NSNonLossyASCIIStringEncoding编码成功编码和解码默认表情符号.

当我用简单的文本发送表情符号时它工作正常,但是当在字符串中添加一些特殊字符时它返回nil.我如何使它工作?

代码:

    testString=":;Hello \ud83d\ude09\ud83d\ude00 ., <> /?\";
    NSData *data = [testString dataUsingEncoding:NSUTF8StringEncoding];
    NSString *strBody = [[NSString alloc] initWithData:data encoding:NSNonLossyASCIIStringEncoding]; 
    // here strBody is nil
Run Code Online (Sandbox Code Playgroud)

unicode encoding objective-c ios emoji

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

版权/注册符号编码不起作用

我开发了一个iOS应用程序,我们可以将emojis从iOS发送到Web门户,反之亦然.从iOS发送到门户网站的所有表情符号都显示完美,除了"©和®".

这是表情符号编码代码片段.

NSData *data = [messageBody dataUsingEncoding:NSNonLossyASCIIStringEncoding]; 
NSString *encodedString = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
Run Code Online (Sandbox Code Playgroud)

//这段代码\251\256作为Unicodes copyright和emojis 返回registered,因为这两个Unicode不符合标准代码,所以它不会显示在门户网站上.

那么我应该怎么做才能将它们转换为标准的Unicodes?

测试运行 :

messageBody = @"Copy right symbol : © AND Registered Mark symbol : ®";
Run Code Online (Sandbox Code Playgroud)

//我从上面的编码得到的编码字符串是

Copy right symbol : \\251 AND Registered Mark symbol : \\256
Run Code Online (Sandbox Code Playgroud)

它应该在哪里(在标准unicodes上)

Copy right symbol : \\u00A9 AND Registered Mark symbol : \\u00AE
Run Code Online (Sandbox Code Playgroud)

unicode ios

7
推荐指数
2
解决办法
685
查看次数

阴影效果无法正确显示UIView

我有一个登录屏幕如下.在每个文本字段周围,我添加了一个视图,对于该视图,我想显示一个投影.我有点实现了我的尝试,但这件事不适用于iPhone Plus(6 +,8 +)设备.

你可以看到下面的区别.

iPhone 8 +: -

在此输入图像描述

iPhone 8: -

在此输入图像描述

这是我的代码

extension UIView {
    func addShadow() {        
        layer.cornerRadius = 8
        layer.masksToBounds = true

        layer.shadowColor = UIColor.lightGray.cgColor
        layer.shadowOffset = CGSize(width: 0, height: 1.0)
        layer.shadowRadius = 2.0
        layer.shadowOpacity = 0.5
        layer.masksToBounds = false

        layer.shadowPath = UIBezierPath(roundedRect: self.bounds,cornerRadius:8).cgPath
    }
}
Run Code Online (Sandbox Code Playgroud)

我怎么能正确解决这个问题?

ios swift

7
推荐指数
1
解决办法
685
查看次数

在JSQMessageView Controller中添加自定义标头

在我的聊天应用程序中,我使用JSQMessagesViewController来呈现对话.要开始对话,我要在View控制器和标题的标题中添加收件人,这应该随着收件人数量的增长而增长.

我怎样才能实现这一目标?

在此输入图像描述

header objective-c ios jsqmessagesviewcontroller

5
推荐指数
0
解决办法
168
查看次数

应用程序保持打开状态时自动锁定不起作用-iOS

我正在开发一个消息传递应用程序,当应用程序保持打开状态时,自动锁定不起作用。(没有一行与代码自动锁定相关)

我用这条线来启用它,

[[UIApplication sharedApplication] setIdleTimerDisabled:NO]; 
Run Code Online (Sandbox Code Playgroud)

但它不起作用。

任何想法如何做到这一点?

objective-c ios auto-lock

4
推荐指数
1
解决办法
628
查看次数

键盘上方的工具栏未显示 - iOS 11

键盘上方的工具栏未显示在iOS 11.0上.它在<11.0版本上运行良好.

这是我添加工具栏的代码.那么我应该添加到iOS 11.0上显示它:

UIToolbar* customToolBar = [[UIToolbar alloc]initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, 60)];     
        customToolBar.barStyle = UIBarStyleDefault;
        customToolBar.items = [NSArray arrayWithObjects:
              [[UIBarButtonItem alloc] initWithTitle:@"+ Contact" 
                                    style:UIBarButtonItemStylePlain 
                                    target:self 
                                    action:@selector(showPicker:)],
               [[UIBarButtonItem 
          alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace 
               target:nil 
               action:nil],
              [[UIBarButtonItem alloc] initWithTitle:@"- Contact" 
                                     style:UIBarButtonItemStylePlain 
                                    target:self 
                                    action:@selector(HidePicker:)],
                               nil];
        [customToolBar sizeToFit];
        self.textView.inputAccessoryView=customToolBar;
Run Code Online (Sandbox Code Playgroud)

iphone objective-c ios ios11

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

PHPhotoLibraryPreventAutomaticLimitedAccessAlert 在呈现照片库时仍显示选择照片选项

根据快速阅读,此键“ PHPhotoLibraryPreventAutomaticLimitedAccessAlert ”的目的是防止受限的库访问。我已在 info.plist 中添加了此选项,但它仍然在权限对话框中显示“选择照片”选项。

在此输入图像描述

获取权限的代码如下。

func checkPhotoLibraryPermission(completionBlock completion: @escaping ()->Void) {
        let status = PHPhotoLibrary.authorizationStatus()
        switch status {
        case .authorized:
            completion()
            break
        case .notDetermined,.denied,.restricted:
            // ask for permissions
            PHPhotoLibrary.requestAuthorization { (status) in
                switch status {
                case .authorized:
                    completion()
                    break
                case .notDetermined,.denied,.restricted:
                    self.alertToEncouragePhotoLibraryAccessWhenApplicationStarts()
                    break
                case .limited:
                    break
                }
            }
            break
        case .limited:
            break
        }
    }
Run Code Online (Sandbox Code Playgroud)

有人请提及此密钥的确切用途是什么,是否有可能强制删除此选项?

ios swift

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