【问题标题】:Change UIAlertView size更改 UIAlertView 大小
【发布时间】:2011-12-22 15:00:58
【问题描述】:

在我的cocos2d游戏中我不能改变uialertview的大小,我已经把statusbarorientation改为landscape,现在想用frame初始化alertview,initwithframe方法不影响alertview的大小,每次alert的大小都是一样,有什么办法改吗?

【问题讨论】:

  • 取决于您想要更改它的具体方式。更多信息将增加您获得有用答案的机会。 :)
  • 我想增加警报视图的宽度。 UIAlerrtView* alert=[[UIAertView alloc] initwithframe:CGRectMake(200,200,200,200)];
  • 增加宽度比增加高度更成问题。恐怕您需要为此目的对其进行子类化。我曾经做过类似的事情,但我完全定制了它(比如其他 bg 图像等等)。
  • 据我所知,没有简单的方法可以更改大小? ))
  • 不是因为它的宽度...(至少我不知道)

标签: ios cocoa-touch uikit cocos2d-iphone uialertview


【解决方案1】:

这就是我所做的。在您的控制器中创建您的 uialertview。然后在您的控制器中覆盖以下类(在设置 uialertview 委托之后......即 myalertview.delegate=viewcontroller)

- (void)willPresentAlertView:(UIAlertView *)alertView {
    [alertView setFrame:CGRectMake(1, 20, 2700, 400)];
}

在此之后帧大小应该改变。

【讨论】:

    【解决方案2】:

    无法自定义 UIAlertView,因为它的视图层次结构是私有的。

    这里明确提到UIAlertView_Class

    你可以去 UIView 并创建它类似于 UIAlertView。

    【讨论】:

      【解决方案3】:

      只需创建类似于 UIAlertView 的 UIView。这将解决你提到的所有问题。

      【讨论】:

        【解决方案4】:

        如果警报视图在其视图中输入了任何标题或消息文本,则只需在文本末尾附加尽可能多的新行 '\n',它会自动缩放其大小。

        它只是一个模拟,但仍然可以在您的应用程序中保留警报框的使用。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-04-27
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多