JQueryMobile - стили, не применяемые в Webview (Android) - PullRequest
1 голос
/ 01 февраля 2012

Я использую «JqueryMobile» для создания моего приложения для Android. Проблема, с которой я сталкиваюсь, заключается в том, что стили JQueryMobile не применяются к странице ..

Вот код моей HTML-страницы (в Webview)

<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title></title>

<link href="css/styles.css" rel="stylesheet" type="text/css"></link>
<script src="js/jquery.js"></script>
<script src="js/jquery.mobile-1.0.min.js"></script>

</head>

<body>

<div id="home" data-role="page">
  <div data-role="header"><h1>Categories</h1></div>
  <div data-role="content">
    <h2>Select a Category Below:</h2>
    <ul data-role="listview" data-inset="true">
        <li><a href="#category-items?category=animals">Animals</a></li>
        <li><a href="#category-items?category=colors">Colors</a></li>
        <li><a href="#category-items?category=vehicles">Vehicles</a></li>
    </ul>
  </div>
</div>

</body>

</html>

и ниже - код в моем классе Активности,

    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    WebView webView = (WebView)findViewById(R.id.webView);
    webView.getSettings().setJavaScriptEnabled(true);
    webView.getSettings().setDomStorageEnabled(true);
    webView.setWebChromeClient(new WebChromeClient());

    webView.loadUrl("file:///android_asset/www/index.html");

Есть ли какие-либо указатели о том, как ее решить ??

Ответы [ 3 ]

3 голосов
/ 02 февраля 2012

Обнаружил проблему ..

Я тестировал свое приложение в эмуляторе Android 4.0. Кажется, что "Ice Cream sandwich" не поддерживается JQueryMobile, и, следовательно, даже основные функции не работают должным образом. Сегодня я тестировал то же приложение (без каких-либо изменения кода) в Android 2.3.3, и это работает как шарм:)

Мне потребовалось почти 2 дня, чтобы понять это :( разместив это здесь ради других:)

1 голос
/ 02 мая 2012

Пробовали ли вы jQM 1.1.0 final?Я заметил, что вы используете JQM 1.0.0 в коде выше.Ice Cream Sandwich предположительно поддерживается в финале jQM 1.1.0.С сайта jQM:

«Android 4.0 (ICS) - протестировано на Galaxy Nexus S. Примечание: производительность перехода может быть плохой на модернизированных устройствах»

0 голосов
/ 28 января 2013

Смотрите этот ответ: https://stackoverflow.com/a/10420027/1538975

Проблема возникает в ICS. Просто добавьте этот код CSS и все работает нормально (у меня была такая же проблема сегодня).

.ui-page {
    /* Supposed to reduce flickering, but screwed up Ice Cream Sandwich. */
    -webkit-backface-visibility: hidden;
}
...