从响应式网站创建WebApp的最佳方式

时间:2015-12-17 16:04:22

标签: android webview responsive-design

我试图通过导航抽屉将我网站的页面加载到android WebView中,我有很多选项可以完成我的任务。

  1. 在Android WebView中显示网站。
  2. 将网站导航转换为android DrawerLayout Menu
  3. 手动添加Android DrawerLayout中的菜单项,并在WebView中加载页面作为菜单项选择。
  4. ------------我在上述案例中发现的问题-----------

    案例1:在Android WebView中显示网站。

    它看起来很好,因为该网站是响应。但它变得沉重和不舒服,它似乎不像一个应用程序。

    案例2:将网站导航转换为Android DrawerLayout Menu

    我不知道是否可以做到。请给出一些建议如果可以通过某种方式完成。我已对此进行了研究,但无法找到任何解决方案。

    案例3:在Android DrawerLayout中手动添加菜单项并在导航时加载WebView中的网页。

    我尝试手动将抽屉中的菜单项添加为网站导航菜单,并加载了不同的页面,其中URL选项与DrawerLayout项不同。但问题是如何使用Site的导航菜单?

    Sample Image of App

    我可以通过编程方式从我的Android应用中删除此navigation还是有其他方法吗?我已经尝试过有力地加载桌面视图。但它看起来很奇怪,我知道这不是在移动设备中加载网页的正确方法。

    我会感谢任何参考,建议或指南。谢谢。

2 个答案:

答案 0 :(得分:1)

对于您要问的第三个问题,删除网页导航项。

在您调用webview方法加载数据之前,我认为您可能会对网站的响应做一些技巧。

例如,假设您以某种方式获取要在应用中显示为响应的网站的xml源代码。它应该看起来像:

<html>
<head>
(some code here)
</head>
<menu>
(some code here)
</menu>
...
...
</html>

Ya,现在您可以尝试删除此源HTML中的菜单块。然后用

显示它
webview.loadDataWithBaseURL("base_url_here", "new_html_source_without_menu", "text/html", "UTF-8", null);

这是我的主意。

说实话,我并不是真的建议你打开一个webview并加载一个链接并尝试创建一个应用程序...如果你能从网站上获取API会更好(你可以以某种方式知道它,我已经尝试了一些时间,但我得到了一些技巧)。第二种方法是你可以使用像 Jsoup 这样的工具来解析网站内容。当我刚接触Android时,我和Jsoup一起玩,真的很喜欢这个过程。

顺便说一句,我必须告诉你,有些网站使用Javascript来制作菜单项的跳转方法。如果您将鼠标移动到网站上的菜单项(或只是检查源代码),您可能会看到代码实际上是一个javascript方法,但不是指向某个地方的链接。在这种情况下,将其转换为本机导航项非常困难。

这就是我现在所能提供的一切。快乐的编码:)

答案 1 :(得分:0)

让栏杆消失

<resources>
    <style name="AppBaseTheme" parent="@style/Theme.Holo.Light">
        <item name="android:windowBackground">@color/background_gray</item>
        <item name="android:actionBarStyle">@style/GreenActionBar</item>
    </style>
    <style name="AppTheme" parent="AppBaseTheme"/>

    <style name="GreenActionBarBase" parent="@style/Widget.THE_STYLE_YOU_WANT">
        <item name="android:background">#00c341</item>
    </style>

    <style name="GreenActionBar" parent="GreenActionBarBase"/>    

</resources>
相关问题