我的应用程序没有在iOS 7上显示图像

时间:2015-01-14 20:31:11

标签: ios objective-c ios7 ios-simulator ios7.1

我有一个包含UIImageView的应用程序。它在iOS 8上工作,但没有在iOS 7上显示图像。我搜索了它,他们总是说“这是自动布局问题”。好吧,我删除了我的视图上的所有约束。但仍然没有显示图像。

NSString *savedImagePath = [documentsDirectory stringByAppendingPathComponent:sf._foto];
[Img setImage:[UIImage imageNamed:savedImagePath]];
Img.frame = CGRectMake(0,0,screenWidth,screenHeight);

2 个答案:

答案 0 :(得分:0)

如果您发现它是自动布局问题,那么您需要从xib中删除该视图并以编程方式添加它。我有类似的问题,只是以编程方式创建它,即使这意味着在您的视图中创建另一个xib并加载它并将其添加到您的视图addSubview:。我想稍后修改的每个视图,但不想处理修改约束,我会以编程方式添加。

或者,您可以添加约束,然后在代码中添加出口,以便在您想要更改内容时进行修改。

希望这有帮助。

答案 1 :(得分:0)

不知道这是否有帮助,但这是我保存的方式,然后通过文档目录

访问图像
- (void)savePaystubToFile: (UIImage *)image {

    if (image != nil)
    {
        NSArray * paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
        NSString * documentsDirectory = [paths objectAtIndex:0];

        NSString * path = [documentsDirectory stringByAppendingPathComponent: @"example.png" ];

        NSData * data = UIImagePNGRepresentation(image);
        [data writeToFile:path atomically:YES];
    }
}

- (UIImage*)loadPaystub {

    NSArray * paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString * documentsDirectory = [paths objectAtIndex:0];

    NSString * path = [documentsDirectory stringByAppendingPathComponent: @"example.png" ];

    // If nothing is stored at that location then return nil
    UIImage * image = [UIImage imageWithContentsOfFile:path] ? [UIImage imageWithContentsOfFile:path] : nil;

    return image;
}

这里的主要区别似乎是我使用imageWithContentsOfFile函数和一步一步的基本设置过程。

我不知道这是否是你正在努力解决的问题,但这是分离存储和检索图像的更好方法。如果这是正常工作,那么你知道问题将在访问框架。