0

我在 XIB 中描述了分段控制(完全在情节提要中)并且参考了控制器类。我正在尝试根据语言更改分段控件标题,但无法更改。当我记录我的分段控件时,它说它没有任何分段,即使我已经在 XIB 中制作它们或以编程方式创建它们。有人知道出了什么问题吗?

代码:

NSLog(@"segments:%d", [segmentControl numberOfSegments]);
[segmentControl removeAllSegments];
[segmentControl insertSegmentWithTitle:@"stuff" atIndex:0 animated:NO];
[segmentControl insertSegmentWithTitle:@"other stuff" atIndex:1 animated:NO];
NSLog(@"segments:%d", [segmentControl numberOfSegments]);

两个日志输出都显示为零

4

2 回答 2

0

我发现问题不是我的代码,而是故事板本身(我玩了半天的本地化)

我发现即使我有一个情节提要,但它在 en.Iproj 中弄得一团糟(看起来另一种语言无法达到它)。我把它放到主文件夹中,现在一切正常。

于 2012-08-02T10:23:49.890 回答
0
    - (void)loadView
    {
            [超级负载视图];
            UISegmentedControl *seg = [[UISegmentedControl alloc] initWithItems:
                                       [NSArray arrayWithObjects:@"111", @"2222", @"333", nil]];
            seg.frame = CGRectMake(0, 0, 300, 50);
            [seg addTarget:self action:@selector(changed:) forControlEvents:UIControlEventValueChanged];
            [self.view addSubview:seg];
            [段发布];
    }

    - (void)changed:(UISegmentedControl *)segmentControl
    {
            NSLog(@"segments:%d", [segmentControl numberOfSegments]);
            [segmentControl removeAllSegments];
            [segmentControl insertSegmentWithTitle:@"stuff" atIndex:0 动画:NO];
            [segmentControl insertSegmentWithTitle:@"other stuff" atIndex:1 动画:NO];
            NSLog(@"segments:%d", [segmentControl numberOfSegments]);
    }

您的代码工作正常。

于 2012-08-02T10:14:50.410 回答