She*_*lam 5 iphone cocoa-touch objective-c uisegmentedcontrol
我有一个带有2个项目的UISegmentedControl.
有没有办法让左项比右项更大?
UISegmentedControl *segmentedControl = [[UISegmentedControl alloc] initWithItems:[NSArray arrayWithObjects:symbol,@"+", nil]];
[segmentedControl addTarget:self action:@selector(segmentedControlChanged:)forControlEvents:UIControlEventValueChanged];
[segmentedControl setWidth:45 forSegmentAtIndex:0];
[segmentedControl setWidth:20 forSegmentAtIndex:1];
segmentedControl.segmentedControlStyle = UISegmentedControlStyleBar;
segmentedControl.frame = CGRectMake(0,0,300,30);
segmentedControl.momentary = NO;
[segmentedControl setSelectedSegmentIndex:0];
self.navigationItem.titleView = segmentedControl;
Run Code Online (Sandbox Code Playgroud)
不行.
Gyp*_*psa 12
是的,你可以这样做: -
[*yoursegmentcontrolobjectname* setWidth:45 forSegmentAtIndex:0];
[*yoursegmentcontrolobjectname* setWidth:15 forSegmentAtIndex:1];
UISegmentedControl *segmentedControl = [[UISegmentedControl alloc] initWithItems:[NSArray arrayWithObjects:symbol,@"+", nil]];
[segmentedControl addTarget:self action:@selector(segmentedControlChanged:)forControlEvents:UIControlEventValueChanged];
segmentedControl.segmentedControlStyle = UISegmentedControlStyleBar;
segmentedControl.frame = CGRectMake(0,0,300,30);
segmentedControl.momentary = NO;
[segmentedControl setSelectedSegmentIndex:0];
self.navigationItem.titleView = segmentedControl;
Run Code Online (Sandbox Code Playgroud)
现在添加这两行然后它将工作
[segmentedControl setWidth:45 forSegmentAtIndex:0];
[segmentedControl setWidth:20 forSegmentAtIndex:1];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9565 次 |
| 最近记录: |