【发布时间】:2016-02-05 09:38:04
【问题描述】:
好的,到目前为止,我一直在 .h 文件中声明我的所有视图对象。例如:
UIButton *btnCustomFacebookLogin;
并在我的 .m 文件中定义如下:
btnCustomFacebookLogin = [UIButton buttonWithType:UIButtonTypeCustom];
btnCustomFacebookLogin.backgroundColor = [UIColor darkGrayColor];
btnCustomFacebookLogin.frame = CGRectMake(0,0,180,40);
btnCustomFacebookLogin.center = CGPointMake(self.view.center.x, 200);
[btnCustomFacebookLogin setTitle: @"Facebook Login" forState: UIControlStateNormal];
[btnCustomFacebookLogin addTarget:self action:@selector(facebookLoginButtonClicked) forControlEvents: UIControlEventTouchUpInside];
[self.view addSubview:btnCustomFacebookLogin];
我的应用程序中还有几个按钮都在我的
中定义- (void)viewDidLoad
我从我的导师那里得到了这个检查,他告诉我所有这些按钮都应该在一个单独的方法中,而不是在 viewDidLoad 中,我不知道它们应该在哪里,我在互联网上浏览了一些示例代码并且无法找到线索。定义所有按钮的正确位置是什么?因为我现在在一家公司工作,所以我必须遵守告诉我的约定。
【问题讨论】:
-
所以每个包含该头文件的实现文件都会获得自己对
UIButton的引用?这是完全错误的做事方式。 -
您需要遵循众多教程之一。扔掉你现有的,删除这个问题。
-
方法取决于要求。如果您需要以编程方式创建多个按钮,那么您需要模块化用于创建按钮的代码并在需要时调用该方法。另一方面,如果您不需要以编程方式进行操作,则转到情节提要并在其中添加按钮(使用约束并设置按钮的 UI)并为操作添加 IBAction 方法并与 UIButton 连接。
-
@TejasK 一点也不。你不会得到答案,因为它太宽泛了。
-
你确定你的导师说按钮引用应该进入单独的方法,而不是作为实例变量或属性?
标签: ios objective-c uibutton uilabel viewdidload