在Xcode上的编译时/运行时删除文本标签/按钮

时间:2015-09-29 09:13:56

标签: ios objective-c xcode

我想知道是否有任何方法可以在编译时删除按钮文本或标签文本。

我有一个从服务器下载内容数据的视图,所以同时请求发生我希望有空文本,我想保留我在xcode上使用的文本,只是在Xcode上,以便在开发过程中轻松查找视图并在我的Xcode上获得更多描述性视图。

现在对于我想要做的每个视图,我正在使用“用户定义的运行时属性”,将文本值设置为空字符串,但我想知道是否有更好的方法可以做这一点。

由于

3 个答案:

答案 0 :(得分:1)

在viewWillAppear方法

上将文本设置为空
JsonObject jObj = new JsonObject();
jObj.addProperty("p", 1);

JsonArray sArr  = new JsonArray();

 for (int i = 0; i < objectList.size(); i++)
 {
        JsonObject innerObj = new JsonObject();
        innerObj.addProperty("a:"+objectList.get(i).getA());
        innerObj.addProperty("b:"+objectList.get(i).getB());

        sArr.add(innerObj);
 }

 jObj.addProperty("s", sArr);

当你收到回复而不是重置按钮标题时。

问题解决不需要设置运行时文本。

OR ELSE

将它放在xib / Viewcontroller中时保留空白按钮文本。

你可以使用你喜欢的东西,这两种方法都很简单,而且两者都有效。

答案 1 :(得分:1)

这个怎么样?

- (void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];

    [self removeLabelsFrom:self.view];
}

- (void) removeLabelsFrom:(UIView *)view {
    for (UIView *subView in view.subviews) {
        if ([subView isKindOfClass:[UIButton class]]) {
            UIButton *button;
            button = (UIButton *)subView;
            [button setTitle:@"" forState:UIControlStateNormal];
        } else {
            if ([subView isKindOfClass:[UILabel class]]) {
                UILabel *label;
                label = (UILabel *)subView;
                label.text = @"";
            } else {
                if (subView.subviews.count > 0) {
                    [self removeLabelsFrom:subView];
                }
            }
        }
    }
}

答案 2 :(得分:0)

Clear Label text used in Storyboard

的副本

在用户定义的运行时属性中将“text”属性设置为空字符串。