gpt4 book ai didi

objective-c - 在 iOS 中的选项卡之间传递数据

转载 作者:可可西里 更新时间:2023-11-01 04:11:33 25 4
gpt4 key购买 nike

这是我尝试自己开发的第一个应用程序,我有一些问题。我想要 4 个选项卡,在第一个名为“HomeView”的选项卡中,我正在解析 JSON 数据(到目前为止已完成)。

但我想要的是正在解析的一些数据在其他选项卡中可见(并且不必再次解析它们)。

所以我的 HomeView 部分代码在这里:

#import "HomeView.h"

@interface HomeView ()
@end

@implementation HomeView


//other code

- (void)connectionDidFinishLoading:(NSURLConnection *)connection {
//data fetched
parsed_date=[res objectForKey:@"date"];
NSLog(@"Date:%@",parsed_date);
[UIAppDelegate.myArray addObject:parsed_date];
}

我可以看到“parsed_date”被正确打印出来。

所以我希望这个 parsed_date 在 OtherView 中可见。

这是我的代码,但我无法打印出来。

其他 View .m

#import "OtherView.h"
#import "HomeView.h"
#import "AppDelegate.h"

@interface OtherView ()

@end

@implementation OtherView
@synthesize tracks_date;

- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view.
//preview value of other class
tracks_date = [UIAppDelegate.myArray objectAtIndex:0];
NSLog(@"Dated previed in OtherView: %@", tracks_date);
}

and (null) 正在被打印出来。

添加了app delegate.h的代码

#import <UIKit/UIKit.h>

#define UIAppDelegate ((AppDelegate *)[UIApplication sharedApplication].delegate)

@interface AppDelegate : UIResponder <UIApplicationDelegate>

@property (strong, nonatomic) UIWindow *window;
@property (nonatomic, strong) NSArray *myArray;

@end

那么你能给我一个解决方案吗?

最佳答案

改为将该属性添加到您的 Application Delegate。

在分配属性时做如下事情:

MyAppDelegate *delegate = (MyAppDelegate *)[[UIApplication sharedApplication] delegate];

delegate.myProperty = @"My Value";

然后,在不同的选项卡中,您可以以相同的方式检索此属性:

MyAppDelegate *delegate = (MyAppDelegate *)[[UIApplication sharedApplication] delegate];
NSString *valueInTab = delegate.myProperty;

关于objective-c - 在 iOS 中的选项卡之间传递数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12145282/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com