0

Objective C と JavaScript のハイブリッド アプリを作成しました。私のアプリは次のように機能します:

  1. 最初のボタンを押すと、UIWebView が読み込まれます
  2. この UIWebView では、html を Documents フォルダーに保存できます。
  3. Web サイトを保存するときに、JSON を作成して情報を保存し、この JSON を Documents フォルダーに保存します。
  4. 2 番目のボタンを押すと、JSON から情報を読み取り、このデータを html リストに表示するモバイル サイトがある別の UIWebView が読み込まれます。
  5. 1 つのサイトの名前を押すと、Documents フォルダーからサイトが読み込まれます

最初の 4 つのポイントはうまく機能しますが、サイトのタイトルを押すと問題が発生します。実際、UIWebView は、このサーバーに保存されていないページであると書かれているページを表示します。Finder でアプリの Documents フォルダーに移動し、html サイトをダブルクリックすると、Safari に表示されます。UIWebView でロードすると機能しないのはなぜですか? 私のフローを理解するために、ここにスクリーンショットを投稿します。

ここに画像の説明を入力

コード: HTML をロードするコードをここに投稿します。

メソッドを呼び出してページをロードする viewDidLoad メソッド

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    self.webView.delegate = self;
    //[self loadWebsite:@"http://localhost/root/main/index.html"];
    [self loadWebsite:@"http://192.168.2.1/root/main/index.html"];
}

loadWebsite メソッド

-(void)loadWebsite:(NSString*)site
{
    NSURL *url = [NSURL URLWithString:site];
    NSURLRequest *request = [NSURLRequest requestWithURL:url];
    [self.webView setScalesPageToFit:YES];
    [self.webView loadRequest:request];
}
4

1 に答える 1