【问题标题】:Creating an UIImageView on UIButton click在 UIButton 单击上创建 UIImageView
【发布时间】:2012-10-10 01:55:33
【问题描述】:

我在一个类中有一个按钮设置,单击它时,我正在调用另一个类中的一个方法,在该方法中我有 UIImageView 的设置代码。

该方法被调用,但不知何故似乎没有创建 ImageView,我不明白为什么,因此我无法向该 ImageView 添加任何图像。

这是我正在尝试做的一些代码:

在我的第一个 viewControllerClass 中,我有一个在单击按钮时触发的方法:

- (IBAction)buttonClicked:(id)sender {

    [secondViewController createNewImageView];
}

然后在第二个 viewController 中调用 createNewImageView 方法,在该方法中我在运行时创建 ImageView:

-(void)createNewImageView {

    newImageView = [[UIImageView alloc] initWithFrame:CGRectMake(100,100, 100, 100)];
    newImageView.backgroundColor = [[UIColor yellowColor] colorWithAlphaComponent:0.4];
    [self.otherNewView addSubview:newImageView];
}

但是不知何故 ImageView 没有被添加到我的视图中,任何想法为什么会发生这种情况?

我在这里错过了什么..?

感谢您的宝贵时间:)

编辑:保存按钮的类是 UIPopOverController。

【问题讨论】:

  • 什么是otherNewView?是零吗?
  • 不,它是我使用 IB 添加的 UIView。它不是零。如果在 ViewDidLoad 方法中添加 ImageView,则添加得很好。但是点击按钮时,Nop ..!
  • 添加一个打印到createNewImageView,点击看看是否调用
  • 是的,我添加了一个 NSLog 来检查,它正在被调用。
  • 当你在第一个控制器中调用方法然后加载第二个视图控制器时,它没有被创建或可以说是创建但被替换,所以当你尝试创建图像视图时 otherNewView 实际上并不存在

标签: iphone uiimageview uibutton uiimage ios6


【解决方案1】:

你在做之前有没有分配secondViewController,

[secondViewController createNewImageView];

我认为您还没有为secondViewController 创建对象。 所以在调用函数之前为类创建对象。

【讨论】:

  • 谢谢,但是我已经为我的类创建了对象,因为方法被调用了。我最终使用一个简单的工作来实现我的目的的任何方法,我现在将我的 ImageView 添加到我用来打开 PopOverController 的按钮单击事件上。但是感谢所有人的投入:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-29
  • 2011-12-16
  • 2012-09-13
  • 1970-01-01
  • 1970-01-01
  • 2011-09-04
  • 2015-09-14
相关资源
最近更新 更多