cno*_*gr8 6 text objective-c string-formatting uilabel
在Objective-C中,我有一个UILabel,上面写着'正在加载'.每0.5秒,字符串将获得另一个'.' 直到有3个点,然后重新开始.我面临的问题是我的字符串居中,当每个点出现时,字符串跳跃.字符串跳转的原因是因为UILabel不断修剪正确的空格.
以下是目前正在发生的一个例子.
+------------+
| Loading |
+------------+
| Loading. |
+------------+
| Loading.. |
+------------+
| Loading... |
+------------+
Run Code Online (Sandbox Code Playgroud)
这就是我想要发生的事情.
+------------+
| Loading |
+------------+
| Loading. |
+------------+
| Loading.. |
+------------+
| Loading... |
+------------+
Run Code Online (Sandbox Code Playgroud)
告诉UILabel有更大的宽度并且左对齐不是一种选择.这需要与文本一起完成.
我发现了这个链接,但我仍然无法弄明白.
我现在拥有的是这个.
[NSString stringWithFormat:@"%-3.3s", [@"" UTF8String]];
[NSString stringWithFormat:@"%-3.3s", [@"." UTF8String]];
[NSString stringWithFormat:@"%-3.3s", [@".." UTF8String]];
@"...";
Run Code Online (Sandbox Code Playgroud)
文本在标签上的工作方式是 - 它由标准格式信息格式化 - 例如修剪等。如果你不希望 ios 控制它。您可以通过编程方式设置attributeText。这不会经过格式化。这是苹果的相关文档
attributeText 标签显示的样式文本。
@property(nonatomic,copy) NSAttributedString *attributedText 讨论 该属性默认为零。为该属性分配新值还会用相同的字符串数据替换文本属性的值,尽管没有任何格式信息。此外,分配新的 a 值会更新 font、textColor 和其他与样式相关的属性中的值,以便它们反映从属性字符串中的位置 0 开始的样式信息。
本质上将 uilabel 的属性文本设置为“Loading”