【问题标题】:How to Add a Semi Transparent UIView to a UIViewController如何将半透明 UIView 添加到 UIViewController
【发布时间】:2012-07-01 09:53:42
【问题描述】:

在某个用户操作后,我希望向我的 UIViewController 添加另一个半透明的 UIView;即当它加载时,后面的 UIViewController 视图仍然会在背景中可见,而新的 UIView 将显示为它上面的一个层。

“半透明”的 UIView 应该有几个图像和按钮,所以我更喜欢为它创建一个单独的 h、m 和 xib 文件以便我可以控制它。

我该怎么做?

【问题讨论】:

    标签: ios uiview uiviewcontroller transparency xib


    【解决方案1】:

    试试这个:

    UIView *view = [[UIView alloc] init];
    [view setAlpha:0.5];
    [mainview addSubview:view]
    

    【讨论】:

      【解决方案2】:
      1. 子类 UIView,创建 nib 文件
      2. 将 nib 类更改为您的自定义子类名称
      3. 将文件所有者更改为您的视图控制器
      4. 在您的视图控制器中,使用 IBOutlet 为自定义视图声明 @property
      5. 选择笔尖,从文件所有者拖动到自定义视图并连接插座
      6. 在您的按钮操作中,当您准备好加载视图时,使用

      [[NSBundle mainBundle] loadNibNamed:@"NibName" owner:self options:nil];

      完成此操作后,您的自定义将从 nib 加载并分配给您声明的属性。

      【讨论】:

      • 谢谢罗格。一个问题:当我从我的 firstView 调用 transparentView 时 - 在 loadNibNamed 之前我还需要执行其他操作吗?比如“alloc”、“initWithFrame”等等……
      • 当您运行loadNibNamed 时,您的视图是使用initWithCoder 方法“分配/初始化”的。框架设置为您在 nib 文件中指定的大小。如果您需要在初始化期间配置任何变量等,您可以在自定义视图类中覆盖 initWithCoder
      猜你喜欢
      • 2011-09-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多