gpt4 book ai didi

objective-c - 更改 UISegmentedControl selectedSegmentIndex 不会更改所选索引

转载 作者:行者123 更新时间:2023-11-28 23:09:20 25 4
gpt4 key购买 nike

我正在尝试使用 UISegmentControl 在 iOS5 的导航栏中创建一个切换按钮。我遇到的问题是 setSelectedSegmentIndex 不是持久的,即当用户单击其中一个段时,它的操作被调用但它没有设置为选中。我当前的代码如下所示:

// In viewDidLoad
toolSegment = [[UISegmentedControl alloc] initWithItems:
[NSArray arrayWithObjects:
[UIImage imageNamed:@"ToolPenIcon.png"],
[UIImage imageNamed:@"TextIcon.png"],
nil]];
[toolSegment addTarget:self action:@selector(changeMode:) forControlEvents:UIControlEventValueChanged];
toolSegment.frame = CGRectMake(0, 0, 85, 30);
toolSegment.segmentedControlStyle = UISegmentedControlStyleBezeled;
toolSegment.momentary = YES;
[toolSegment setSelectedSegmentIndex:1];
UIBarButtonItem *segmentBarItem = [[UIBarButtonItem alloc] initWithCustomView:toolSegment];
self.navigationItem.rightBarButtonItem = segmentBarItem;

self.navigationController.navigationBar.tintColor = [UIColor blackColor];

- (void)changeMode:(id)sender
{
UISegmentedControl * control = (UISegmentedControl*)sender;

if (control.selectedSegmentIndex == 0) {
NSLog(@"Print");
[toolSegment setSelectedSegmentIndex:0];
} else {
// Should change the selected index.
[toolSegment setSelectedSegmentIndex:1];

[pageView changeToText];
if (pageView.canvas.image != nil) {
[self createNewPage];
}
writing = YES;
}
}

任何关于我可能做错的提示都将不胜感激。

最佳答案

您可能不希望控件处于momentary 模式,因为这将允许进行多项选择。将 momentary 设置为 NO

关于objective-c - 更改 UISegmentedControl selectedSegmentIndex 不会更改所选索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8669812/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com