30

我正在学习如何在 iPhone 上开发,我买了一本名为《Beginning iPhone 3 development Exploring the SDK》的书。在我咬了之后,我决定放弃 Interface Builder。我仍然在 IB 中设计我的所有视图,但我全部用代码编写,并且只使用 nib 文件来获取控件的框架。

所以现在我需要制作一个UIButton,并且文档与其他控件不同。我尝试使用initWithFrame:,并且我认为这是自动释放的另一种方法buttonWithType:,但无论如何我无法让按钮出现在屏幕上。有人可以编写一些代码,在本地创建一个带有标题的按钮,我可以更改它,然后我可以添加到我的视图子视图并发布,这样我就可以看到它是如何完成的?

4

1 回答 1

83

我会尝试这样的事情:

    UIButton *myButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    myButton.frame = CGRectMake(20, 20, 200, 44); // position in the parent view and set the size of the button
    [myButton setTitle:@"Click Me!" forState:UIControlStateNormal];
    // add targets and actions
    [myButton addTarget:self action:@selector(buttonClicked:) forControlEvents:UIControlEventTouchUpInside];
    // add to a view
    [superView addSubview:myButton];

免责声明:只需在此处输入。我目前无法访问我的 Mac,因此无法对其进行测试。

PS 有什么特别的理由不使用 Interface Builder?只是好奇。

于 2009-07-31T03:02:21.273 回答