簡體   English   中英

從表格視圖推送到包含標簽欄的視圖時,無法在webview中分配數據

[英]not able to assign data in webview when pushed from a table view to a view containing tabbar

我正在解析一個json對象,並在表視圖中填充它。

選擇表視圖行后,它將導航到名為“ ThirdDetailView”的詳細視圖控制器,並能夠在我的ThirdDetailView中分配解析的數據(使用Web視圖)。

當我的ThirdDetailView是我的四個選項卡欄中的視圖之一時出現問題。我已將這四個選項卡放置在名為firstView的視圖中,因此在表視圖上單擊將導航到firstView包含四個選項卡欄,其中將ThirdDetailView突出顯示為第一個選項卡。如果是這種情況,則不會在Web視圖中加載數據。

下面是代碼:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
     title=[story objectAtIndex:indexPath.row];
 NSDictionary *detaildesc1=[media1 objectAtIndex:indexPath.row];
  ThirdDetailView *detailViewController1= [[ThirdDetailView alloc]init];
    [detailViewController1 initWithItem:detaildesc1 Title:title];

     FirstView *dvController4 = [[FirstView alloc] initWithNibName:@"FirstView" bundle:[NSBundle mainBundle]];
    [self.navigationController pushViewController:dvController4 animated:YES];

    [dvController4 release];

    [detailViewController1 release];
    }
    }

ThirdDetailView

@synthesize theItem1,theTitle,img,body,message,facebook,webview,id1;

     - (id)initWithItem:(NSDictionary *)detaildesc1 Title:(NSString *)title 
    {
if (self = [super initWithNibName:@"ThirdDetailView" bundle:nil]) {
    self.id1=detaildesc1;
    self.theTitle=title;
      urlAddress = [NSString stringWithFormat:@"http://dev-parkguiden.knutpunkten.se/Api/GetPark?parkid=%@",self.id1];
        baseURL =[[NSURL URLWithString:urlAddress]retain];
        jsonData=[NSData dataWithContentsOfURL:baseURL];

        // self.title=title;

        NSDictionary *items=[NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingMutableLeaves error:nil];

         boom=[items objectForKey:@"description"];
         NSLog(@"what is the text:%@",[items objectForKey:@"description"]);

         [self.webview loadHTMLString:boom baseURL:nil];
    }

return self;
    }

在此處輸入圖片說明

FirstView標簽欄 在此處輸入圖片說明

試試這個

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
 [[NSUserDefaults standardUserDefaults] setValue:[media1 objectAtIndex:indexPath.row] forKey:@"id1"];
    [[NSUserDefaults standardUserDefaults] setValue:[story objectAtIndex:indexPath.row] forKey:@"theTitle"];

     FirstView *dvController4 = [[FirstView alloc] initWithNibName:@"FirstView" bundle:[NSBundle mainBundle]];
    [self.navigationController pushViewController:dvController4 animated:YES];

    [dvController4 release];

    [detailViewController1 release];
    }
    }


 - (void)viewDidLoad {


    [super viewDidLoad];
    id1 =    [[NSUserDefaults standardUserDefaults] valueForKey:@"id1"];
    theTitle = [[NSUserDefaults standardUserDefaults] valueForKey:@"theTitle"];
    NSLog(@"hi %@", id1);
    hello=@"hello";
    NSLog(@"ahhhha sdfgs :%@",theTitle);

    urlAddress = [NSString stringWithFormat:@"http://dev-parkguiden.knutpunkten.se/Api/GetPark?parkid=%@",self.id1];
    baseURL =[[NSURL URLWithString:urlAddress]retain];

    jsonData=[NSData dataWithContentsOfURL:baseURL];

    NSDictionary *items=[NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingMutableLeaves error:nil];

    self.boom=[items objectForKey:@"description"];
    NSLog(@"retard:%@",self.boom);
    NSString *html = [NSString stringWithFormat:@"<html><body><p>%@</p></body></html>", self.boom];  
    [self.webview loadHTMLString:html baseURL:nil]; 


}

我已經在我的應用中進行了測試,可以完美地在網絡視圖中顯示您的文字

嘿,我已經嘗試過使用給定網址的代碼
@"http://dev-parkguiden.knutpunkten.se/Api/GetPark?parkid=56"
它顯示在我的網絡視圖中。 請檢查您的IBOulet是否正確連接


已編輯
嘿,您沒有在上面的代碼中使用dvController4中的detailViewController1 dvController4您剛剛分配了它,然后釋放了它,但是您沒有使用它。這可能是錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM