以编程方式设置对象的框架无效

Posted

技术标签:

【中文标题】以编程方式设置对象的框架无效【英文标题】:Setting the Frame of an Object Programatically Has No Effect 【发布时间】:2012-02-11 22:20:15 【问题描述】:

我需要一个比标准尺寸更大的 UIAlertView 查看器。 这是我目前正在尝试的:

UIAlertView *addNewDevice = [[UIAlertView alloc] initWithTitle:NSLocalizedString(@"Add New Device", "Title for add new device") message:nil delegate:self cancelButtonTitle:NSLocalizedString(@"CANCEL", @"Cancel Button") otherButtonTitles:NSLocalizedString(@"OK", "OK"), nil];

addNewDevice.frame = CGRectMake(addNewDevice.frame.origin.x, addNewDevice.frame.origin.y, addNewDevice.frame.size.width, 500);

[addNewDevice show];

是的,我知道 500 磅的宽度太大,但我只是把这个值放在那里进行测试,我的 UIAlertView 没有修改它的大小。

诚然,我对以编程方式处理对象知之甚少,但我花了一个下午的时间阅读它们,但没有运气。任何帮助将不胜感激。

【问题讨论】:

【参考方案1】:

尝试将框架线放在显示线之后。

[addNewDevice show];
addNewDevice.frame = CGRectMake(addNewDevice.frame.origin.x, addNewDevice.frame.origin.y, addNewDevice.frame.size.width, 500);

【讨论】:

没关系。我把代码放在错误的地方。它确实有效哈哈。非常感谢!

以上是关于以编程方式设置对象的框架无效的主要内容,如果未能解决你的问题,请参考以下文章

以编程方式设置在视图控制器上添加的对象的标记

由于对象的当前状态,操作无效。(SPWebApplication.Update)

iOS 以编程方式居中对象

以编程方式设置 TextView 的布局权重

以编程方式设置TextView的布局权重

如何使用 iPhone 的 JSON 框架以编程方式生成 JSON