从另一个控制器添加图像到UISegmentedControl

时间:2012-08-30 13:46:51

标签: objective-c xcode

MainViewController包含UISegmentedControl,包含3个细分。

SliderSubViewController包含UISlider-(void) sliderValueChanged:(UISlider*)sender

我想在SliderSubViewController.m中添加这样的代码但我仍然​​坚持如何访问UISegmentedControl并添加图片:

- (void)viewDidLoad
{
[super viewDidLoad];

mainController = [[MainViewController alloc] initWithNibName:nil bundle:nil];


[minPrisSlider addTarget:self
                  action:@selector(sliderValueChanged:) 
                  forControlEvents:UIControlEventValueChanged];


- (void)sliderValueChanged:(UISlider*)sender
{

NSUInteger index = (NSUInteger)(minPrisSlider.value + 0.5); // Round the number.
[minPrisSlider setValue:index animated:NO];

int progressAsInt =(int)(minPrisSlider.value + 0.5f);
NSString *newText =[[NSString alloc] initWithFormat:@"%d,-",progressAsInt];
minPrisText.text = newText;

if (minPrisSlider.value != 70) {
    /*mainController.segmentedControl add main bundle image named "CheckboxChecked.png" 
   to current segment*/
}
}

1 个答案:

答案 0 :(得分:0)

如果您在MainViewController上添加了SliderViewController作为子视图,您可以尝试的一种方法是在SliderViewController中声明MainViewController的对象,写@property和@synthesize,不要分配它,并且在将SliderView添加为子视图时只需将其指定为

sliderviewcontrollerObject.mainViewControllerObject = self;

现在你可以从sliderview ass self.mainViewControllerObject.segmentedbar访问segmentedControl

您也可以尝试delegate方法。