2010-03-15 3 views
3

У меня есть относительно простой вопрос, на который я не могу найти ответ. Во время обучения в Google Maps Java API Tutorials я столкнулся с проблемой. Я могу загрузить HTML-файл из Интернета, но когда я его пытаюсь локально, он просто отображает содержимое файла вместо запуска скрипта.Как отобразить локальный файл html в UIWebView?

Вот что работает:

NSString *url = @"http://code.google.com/apis/maps/documentation/v3/examples/geocoding-simple.html"; 
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:url]]; 
[webView loadRequest:request]; 

Я хочу, чтобы сохранить файл HTML локально и запустить его из самого устройства, так что я пробовал:

[webView loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"geocoding-simple" ofType:@"html"]isDirectory:NO]]]; 

и он просто отображается содержимое из файл.

Вот HTML-файл:

<html> 
<head> 
<meta name="viewport" content="initial-scale=1.0, user-scalable=no"/> 
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/> 
<title>Google Maps JavaScript API v3 Example: Geocoding Simple</title> 
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script> 
<script type="text/javascript"> 
    var geocoder; 
    var map; 
    function initialize() { 
    geocoder = new google.maps.Geocoder(); 
    var latlng = new google.maps.LatLng(-34.397, 150.644); 
    var myOptions = { 
     zoom: 8, 
     center: latlng, 
     mapTypeId: google.maps.MapTypeId.ROADMAP 
    } 
    map = new google.maps.Map(document.getElementById("map_canvas"), myOptions); 
    } 

    function codeAddress() { 
    var address = document.getElementById("address").value; 
    if (geocoder) { 
     geocoder.geocode({ 'address': address}, function(results, status) { 
     if (status == google.maps.GeocoderStatus.OK) { 
      map.setCenter(results[0].geometry.location); 
      var marker = new google.maps.Marker({ 
       map: map, 
       position: results[0].geometry.location 
      }); 
     } else { 
      alert("Geocode was not successful for the following reason: " + status); 
     } 
     }); 
    } 
    } 
</script> 
</head> 
<body style="margin:0px; padding:0px;" onload="initialize()"> 
    <div> 
    <input id="address" type="textbox" value="Sydney, NSW"> 
    <input type="button" value="Geocode" onclick="codeAddress()"> 

    </div> 
<div id="map_canvas" style="width:100%; height:90%"></div> 
</body> 
</html> 

Что я здесь делаю неправильно?

Thomas

+0

Привет, Томас, Какие цели вы очистили? У меня около 12 html страниц с javascript, которые я хотел бы показать по телефону. – 2010-08-02 09:36:21

+0

Я очистил все цели. Построить << Очистить все цели – Thomas

+0

Спасибо, много appriciated. Я попробую. Я делаю бесплатную онлайн-русскую Библию с 1200 страницами и 250 страницами для детей. Мне нужно узнать больше. Провел уже несколько дней и не понял, как сделать внешний .js для выполнения. Нашли некоторые рекомендации на этом сайте и надеемся, что это поможет. Еще раз спасибо за ваш ответ. – 2010-08-04 10:03:50

ответ

0

OK. Я очистил все цели, и теперь это работает ... SWEEEET!

Смежные вопросы