Objective c 无法在UIWebview中分配文本
我正在使用ios5。我正在解析json对象并在控制台中获取值。但是,当我尝试在webview中分配值时,我没有获取值。我已经在我的IBOutlet中建立了正确的连接。但下面的代码和屏幕截图仍然不起作用Objective c 无法在UIWebview中分配文本,objective-c,xcode,Objective C,Xcode,我正在使用ios5。我正在解析json对象并在控制台中获取值。但是,当我尝试在webview中分配值时,我没有获取值。我已经在我的IBOutlet中建立了正确的连接。但下面的代码和屏幕截图仍然不起作用 - (id)initWithItem:(NSDictionary *)detaildesc1 Title:(NSString *)title { if (self = [super initWithNibName:@"ThirdDetailView" bundle:nil]) { i
- (id)initWithItem:(NSDictionary *)detaildesc1 Title:(NSString *)title
{
if (self = [super initWithNibName:@"ThirdDetailView" bundle:nil]) {
id1=detaildesc1;
self.theTitle=title;
urlAddress = [NSString stringWithFormat:@"http://dev- parkguiden.knutpunkten.se/Api/GetPark?parkid=%@",id1];
baseURL =[[NSURL URLWithString:urlAddress]retain];
jsonData=[NSData dataWithContentsOfURL:baseURL];
self.title=title;
NSDictionary *items=[NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingMutableLeaves error:nil];
NSLog(@"what is the text:%@",[items objectForKey:@"description"]);
[self.webview loadHTMLString:[items objectForKey:@"description"] baseURL:nil];
}
return self;
}
当您在内存中加载字符串时,可以首先确保您的webview已从IBOutlets加载到内存中。i、 e.当您将此字符串加载到webview时,已为具有此webview的控制器调用viewDidLoad/ViewDidAspect。是的,它正在viewDidLoad中加载。但我现在面临的问题是。我正在推到一个包含4个选项卡栏的视图,其中第一个选项卡栏包含上述模块。我可以获取数据,但未在viewDidLoad中加载数据。请参阅。您正在使用self=[super initWithNibName:],这意味着该类是控制器,其中-在该调用之后,您的出口将连接到您在该类中定义的变量。由于您正在以相同的方法加载htmlstring,直到此时,不会调用viewDidLoad/ViewDidAspect。只有当视图通过addSubView/presentModalViewController/PushViewController等方式显示给用户时,才会调用viewDidLoad。因此,我坚信此时您的webview已连接,但未加载到内存中,因此无法接受任何数据。我相信没有任何补救措施或解决方案。我非常高兴您需要移动这些行要在同一控制器中查看显示/查看加载,jsonData=[NSData dataWithContentsOfURL:baseURL];NSDictionary*items=[NSJSONSerialization JSONObjectWithData:jsonData选项:NSJSONReadingMutableLeaves错误:nil];[self.webview loadHTMLString:[items objectForKey:@“description”]baseURL:nil];应用程序正在崩溃,因为它在NSDictionary*id1中返回空值,在viewDidLoad any idea中。