Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/103.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios Swift setText UILabel_Ios_Swift_Settext - Fatal编程技术网

Ios Swift setText UILabel

Ios Swift setText UILabel,ios,swift,settext,Ios,Swift,Settext,打印: let responseString = NSString(data: data!, encoding: NSUTF8StringEncoding) print(responseString) self.lbl1.text = String(responseString) 我的问题 Optional(2000 TL) 我想写“2000 TL”不可变的responseString是可选的,因此您需要将其展开以摆脱可选(…)包装 您可以这样做,例如使用 或

打印:

let responseString = NSString(data: data!, encoding: NSUTF8StringEncoding)
        print(responseString)
        self.lbl1.text = String(responseString)
我的问题

Optional(2000 TL)

我想写“2000 TL”

不可变的
responseString
是可选的,因此您需要将其展开以摆脱
可选(…)
包装

您可以这样做,例如使用


不可变的
responseString
是可选的,因此您需要将其展开以摆脱
可选(…)
包装

您可以这样做,例如使用

试试这个:

if let responseString = NSString(data: data!, encoding: NSUTF8StringEncoding) {
    print(responseString)
    self.lbl1.text = String(responseString)
}
为您的标签尝试以下操作:

print(responseString!)
这将删除可选的…

请尝试以下操作:

if let responseString = NSString(data: data!, encoding: NSUTF8StringEncoding) {
    print(responseString)
    self.lbl1.text = String(responseString)
}
为您的标签尝试以下操作:

print(responseString!)

这将删除可选的…

如果responseString为零,您想做什么?如果您想要其他值作为占位符,那么您可以使用dfri在其优秀答案中的任一选项。(如
self.lbl1.text=String(responseString??“no value”
)@dfri我尝试了12个代码。打印可以工作,但标签似乎是空的。@ÖmerBüyükçelik这很奇怪(除非
responseString
nil
,在这种情况下应该是空的)。你确定你试过1:
self lbl1.text=String(responseString??)
或2:
self.lbl1.text=String(responseString)
if let
子句中。还请注意,
UILabel
可能会在宽度受限的情况下截断文本,而不是您希望它显示的文本。@ÖmerBüyükçelik:您能告诉我们原始字符串是如何转换为
NSData
的吗?@ÖmerBüyükçelik抱歉,我不能用这个li重现您的问题斜接信息。此外,请将您的代码作为代码而不是屏幕截图发布(编辑您的问题)。此外,由于您的问题仍然存在,请向我们展示(在代码块中,而不是代码屏幕截图中)一个更完整的示例,说明您遇到此问题的原因(例如,appzYourLife描述的详细信息);到目前为止,您只向我们展示了一段未知代码中的一小部分,这使得我们很难详细帮助您。请参阅。如果responseString为零,您想做什么?如果您想要其他值作为占位符,那么您可以使用dfri在其优秀答案中的任意一个选项来完成。(如
self.lbl1.text=String)(responseString??“无值”
)@dfri我尝试了12个代码。打印工作正常,但标签似乎是空的。@ÖmerBüyükçelik这很奇怪(除非
responseString
nil
,在这种情况下应该是空的)。你确定你尝试了1:
self.lbl1.text=String(responseString??)
或2:
self.lbl1.text=String(responseString)
if let
子句中。还请注意,
UILabel
可能会在宽度受限的情况下截断文本,而不是您希望它显示的文本。@ÖmerBüyükçelik:您能告诉我们原始字符串是如何转换为
NSData
的吗?@ÖmerBüyükçelik抱歉,我不能用这个li重现您的问题斜接信息。此外,请将您的代码作为代码而不是屏幕截图发布(编辑您的问题)。此外,由于您的问题仍然存在,请向我们展示(在代码块中,而不是代码屏幕截图中)一个更完整的示例,说明您遇到此问题的原因(例如,appzYourLife描述的详细信息);到目前为止,您只向我们展示了未知代码中的一小部分,这使得我们很难详细帮助您。请参阅。查看我的答案,只需添加一个“!”以摆脱可选的…不要使用
NSString
。只需使用
String
,例如,如果let responseString=String,请使用
(数据:data!,编码:NSUTF8StringEncoding){self.lbl1.text=responseString}
。如果从后台线程执行此操作(例如,
NSURLSession
完成处理程序),不要忘记将UI更新发送回主队列。查看我的答案,只需添加一个“!”以摆脱可选的…不要使用
NSString
。只需使用
String
,例如,如果让responseString=String(数据:data!,编码:NSUTF8StringEncoding){self.lbl1.text=responseString}。另外,如果从后台线程执行此操作(例如,
NSURLSession
完成处理程序),不要忘了将UI更新发送回主队列。在处理网络响应时使用
是不谨慎的。使用可选绑定等更安全。在处理网络响应时使用
是不谨慎的。使用可选绑定等更安全。
self.lbl1.text = responseString!