iphone - IBAction 在第二个 View Controller 中设置 UIImageview 图像?

标签 iphone objective-c ios xcode ipad

我正在尝试设置一些东西,其中来自 view controller 1IBAction 将在 View Controller 2 中设置 ImageView 图像 viewDidLoad 使用标签来区分按下的按钮......类似(不是确切的代码......只是在我的脑海中散列):

在 View Controller 1 中:

-(IBAction)buttonpressed:(id)sender {

if (button.tag == 1) {

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

}else if (button.tag == 2) {

ViewController2ImageView.image = [UIImage imageNamed:@"image2.png"];
}

在 View Controller 2 中:

-(void)viewDidLoad {

ViewController2ImageView.image = [UIImage imageNamed:@"?.png"];
}

问题是如何从 IBAction 获取信息以传递给第二个 View Controller 并让 viewDidLoad 方法加载正确的图像。

我看过将数据转换为 NSString 并以这种方式传递的示例,但是我真的很想知道是否有更好的方法来解决这个问题。

到目前为止,我已经能够通过将几个应用程序放在一起来 Google 搜索我的方法,但这让我挠了挠头好几天了。

任何帮助或建议的代码都会有所帮助!即使它只是朝着正确方向的插入。

谢谢!

最佳答案

当在 viewController1 中按下按钮时,执行如下操作:

-(IBAction)buttonpressed:(id)sender {
    if (button.tag == 1) {
        [[NSUserDefaults standardUserDefaults] setObject:@"image1.png" 
            forKey:@"viewController2SelectedImageKey"];
    } else if (button.tag == 2) {
        [[NSUserDefaults standardUserDefaults] setObject:@"image2.png" 
            forKey:@"viewController2SelectedImageKey"];
    } else {
        //set some default string for the image
        [[NSUserDefaults standardUserDefaults] setObject:@"yourDefaultImage.png" 
            forKey:@"viewController2SelectedImageKey"];
    }
}

然后在 viewController2 的 viewDidLoad 方法中执行类似this的操作:

- (void)viewDidLoad {
    ViewController2ImageView.image = [UIImage imageNamed:[[NSUserDefaults 
        standardUserDefaults] objectForKey:@"viewController2SelectedImageKey"]];
    //other setup
}

此代码将一个字符串设置为 NSUserDefaults plist 中的一个键(我使用的键是 @"viewController2SelectedImageKey",但您可以使用任何您喜欢的字符串),viewController2 在其 viewDidLoad 方法上引用该字符串并将该字符串用作图像文件的名称。

关于iphone - IBAction 在第二个 View Controller 中设置 UIImageview 图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8440468/

相关文章:

ios - TableView setEditing 还启用行删除

objective-c - 是否有KeyUp : method for flagsChanged:?

iphone - CoreGraphics 图像调整大小

ios - Xcode 9 无线调试不工作

iphone - Objective-C 中的全局常量

iphone - UIButton 背景 VS UIButton imageview.view

objective-c - 释放和自动释放有什么区别?

ios - 此版本不支持 Collection View 单元格内容 View 。至少使用 Xcode 11.0 打开此文档

iphone - 使用Web服务发送图像还是使用Smtp发送电子邮件?

objective-c - NSString指针: theoretical questions after study