0

这是代码

-(id) initWithNibName:(NSString*) nibNameOrNil bundle:(NSBundle*)nibBundleOrNil
{
   ...
   [segCtrl addTarget:self action:@selector(OnSegCtrlChanged:) forControlEvents:UIControlEventValueChanged];
}

-(void)OnSegCtrlChanged:(id)sender
{
   if(segCtrl.selectedSegmentIndex==0)
   {
      [mapvw setMapType:MKMapTypeSatellite];
   }
   else if//....
}

我的更改地图图像显示的代码看起来就像那样,可悲的是,在我编译并运行程序后,根本没有任何效果。“没有任何效果”意味着在我从屏幕上的分段控件中选择索引后,没有显示相应的地图类型。

[更新]我猜我在 InitWIthNibName 中放入的分段控件的初始化不正确,因为它不是正确的起点。如果没有,我应该把它放在哪里?

4

2 回答 2

1

在方法中设置目标viewDidLoad:..如下所示..

- (void)viewDidLoad
{
       .....
      [segCtrl addTarget:self action:@selector(OnSegCtrlChanged:) forControlEvents:UIControlEventValueChanged];
}
于 2012-11-05T04:48:40.730 回答
0

在方法中设置它loadView..

- (void)loadView
{
       .....
      [segCtrl addTarget:self action:@selector(OnSegCtrlChanged:) forControlEvents:UIControlEventValueChanged];
}

这可能会更好....

于 2012-11-05T05:12:40.173 回答