【问题标题】:Issue on setting a UIImage to a custom UIButton将 UIImage 设置为自定义 UIButton 的问题
【发布时间】:2012-08-03 12:47:46
【问题描述】:

我有一个UIViewController,它有两个属性:UIImageViewUiButton。它们都在IBOutlets 上正确连接到Interface Builder。我的问题是,当我实例化这个视图并设置两个属性时,只设置了UIImageView。我的UIButton 是一个custom 按钮,我正在尝试为其分配一个UIImage。这是我的代码:

MyViewController *viewController = [[MyViewController alloc]initWithNibName:@"MyViewController" bundle:nil];

[viewController view];

viewController.myImageView.image = [UIImage imageNamed:@"image1.png"];

viewController.myButton.imageView.image = [UIImage imageNamed:@"image2.png"];

知道我做错了什么吗?

【问题讨论】:

    标签: ios uiimageview uibutton


    【解决方案1】:

    这不是你为按钮设置图像的方式,你应该使用

    [viewController.myButton setBackgroundImage:[UIImage imageNamed:@"image2.png"] forState:UIControlStateNormal];
    

    【讨论】:

      【解决方案2】:

      您似乎需要使用特定方法来设置 UIButton 的图像,而不是访问属性的设置器。那个方法是:

      [viewController.myButton setImage:[UIImage imageNamed:@"image2.png"] forState:UIControlStateNormal];
      //Or some other variant of UIControlState such as UIControlStateSelected, UIControlStateDisabled, UIControlStateHighlighted, etc.
      

      【讨论】:

        【解决方案3】:

        替换

        viewController.myButton.imageView.image = [UIImage imageNamed:@"image2.png"];
        

        [viewController.myButton setBackgroundImage:[UIImage imageNamed:@"image2.png"] forState:UIControlStateNormal];
        

        应该有效

        【讨论】:

        • 完全做到了!非常感谢=]
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-11-29
        • 1970-01-01
        • 1970-01-01
        • 2011-08-19
        • 1970-01-01
        • 2019-02-15
        相关资源
        最近更新 更多