将导入的照片存储在 Xcode 项目中



我对模型和保存数据仍然有点困惑,也许有人可以帮助我。 我有一个页面,用户可以在其中导入照片 相机胶卷.一旦我移动到下一页,它又消失了。 我可以从文本框将文本数据保存在 NString 中,但我不确定如何使用图像执行此操作。 图像显示在 UI Web 视图中。

Xcode 4.3

    UIImagePickerController * picker = [[UIImagePickerController alloc] init];
    picker.delegate = self;
    if((UIButton *) sender == choosePhotoBtn) {
        picker.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum;
    }
    [self presentModalViewController:picker animated:YES];

}
- (void)imagePickerController:(UIImagePickerController *)picker        didFinishPickingMediaWithInfo:(NSDictionary *)info {
    [picker dismissModalViewControllerAnimated:YES];
    imageView.image = [info objectForKey:@"UIImagePickerControllerOriginalImage"];

首先,尝试发布一些问题代码。 它让我们更好地帮助你。

好的,根据我的推测,问题是当您推送到新视图时,您会丢失图像。 好吧,我遇到了这个问题,我使用单例类解决了它。 它有点创建全局元素,您可以存储您喜欢保存的值。 包括图像,类对象(你命名它(

您可以根据需要保存任意数量的值,甚至不必将其存储在库中。

尝试在互联网上阅读单例课程我相信我们的好朋友谷歌肯定会帮助你

编辑-------- 关于辛格尔顿

好吧,既然你已经读过关于辛格尔顿的信息。 你可能已经注意到为什么我们使用单例类,辛格尔顿的主要目的是保存全局变量,但你知道不要!!关于你的问题,当你选择一个图像(来自相机或照片加拉里(它会返回给你一个UIImage的对象。

你必须有一个单例类 一些类似的东西

#import <Foundation/Foundation.h>
@interface Singleton : NSObject
{
        //Global  Variables
        //UImage Instance that will Store The Image From Picker
        UIImage *photoPicked;    
}
//Getter And Setter
@property (nonatomic,retain)  UIImage *photoPicked ;
//Shared SIngleton CLass
+(Singleton*)sharedSingletonController;
@end

M文件看起来像这样

#import "Singleton.h"
@implementation Singleton
@synthesize imagePicked;
//Class Function For SingleTon
+(Singleton*)sharedSingletonController{
    static Singleton *sharedSingleton;
    @synchronized(self) {
        if(!sharedSingleton){
            sharedSingleton = [[Singleton alloc]init];
        }
    }
    return sharedSingleton;
}
//I don't want a re-initialization for these variables
-(id)init{
    self = [super init];
    if (self != nil) {

        }
    return self;
}

@end

现在你所要做的就是在想要使用单例图像变量的类中调用 sharedSingletonController 函数,是的不要忘记创建一个单例类的对象

类似的事情

Singleton *yourSingletonObj = [Singleton sharedSingletonController];

现在,您可以将图像存储在单例中,例如

yourSingletonObj.image = (YOUR IMAGE FROM PICKER);

现在,图像将保存在您的单例对象中。因此,当它不会丢失并且您可以随时在任何类中使用它时,您喜欢

干杯让我知道它是否有效W

最新更新