将UIView更改为UIViewController

时间:2016-02-27 09:44:24

标签: ios objective-c uiview uiviewcontroller uibutton

此代码在UIView容器中工作,但在将该容器更改为UIViewController后,代码不再有效:

-(void)viewDidLoad 
{
    [super viewDidLoad];

    [self.view setUserInteractionEnabled:YES];

    // set button
    UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
    button.frame = CGRectMake(60, 30, 220, 220);
    [button setImage:self.obj.img forState:UIControlStateNormal];
    [button addTarget:self action:@selector(selected:) forControlEvents:UIControlEventTouchUpInside];
    [button setUserInteractionEnabled:YES];

    [self.view addSubview:button];
}

-(void) selected:(UIButton *) button // also tried (id) sender
{
    NSLog(@“Button Selected“);
}

这些容器是以编程方式(动态)从Web服务创建的,因此我无法使用Storyboard。更改为UIViewController的原因是我需要一个segue到另一个屏幕。此外,这些容器放在UIScrollView中。

除选择器外,其他所有工作都正常。

之前没有必要设置userInteraction,但我已经开始尝试使用不同的配置。我已经将它添加到scrollview,viewController和按钮,只是为了很好的衡量。

我甚至尝试过一些在线教程,以编程方式在UIViewControllers中创建UIButtons,并且能够做到这一点。不知道这里的问题是什么。感谢。

0 个答案:

没有答案