【问题标题】:asp.net Mobile implementation on IPhone, Blackberry and other mobile devices在 iPhone、Blackberry 和其他移动设备上实现 asp.net Mobile
【发布时间】:2010-11-19 20:03:54
【问题描述】:

我正在尝试设计一个基于 ASP.net 的移动 Web 应用程序,该应用程序应该在 iPhone、Blackberry 等设备上运行,同时提供原生应用程序的外观和感觉。

这似乎不是一个简单直接的任务,或者示例 iPhone 菜单位于顶部,而其他移动平台使用手机本身的菜单按钮(位于底部)。设计一个具有 iPhone 外观和感觉的优秀应用程序不仅仅是可以为其他设备(例如黑莓)定制的 css 和 js 脚本。

我计划扩展 XHTML,然后使用 XSLT 正确扩展以正确扩展输出设备的 html。例如,

<html  xmlns="http://...>
<head>
...
</head>
<body>
<menu>
 <menuItem Name="Home" Url="..." />
 <menuItem Name="Back" Url="..." />
</menu>
<span>This is a test page</span>
</body>
</html>

因此,当我们使用 iPhone XSLT(例如)运行它时,我们可以在顶部展开菜单,而在使用其他设备时,我们可以在底部展开它。

我很想知道是否有其他人以相同或不同的方式解决了这个问题,或者有其他想法。

感谢您的宝贵时间!

【问题讨论】:

    标签: asp.net iphone mobile


    【解决方案1】:

    不久前我参与了一个项目,该项目与您所描述的类似;我们的解决方案是拥有一个通用的 HTML,并根据 User-Agent 标头发送一个特定于设备的 css 文件。这样一来,您总是会留下一个后备(原始 HTML),并且您不会经常挠头担心 XSLT 的实现或转换后的 XHTML 的样子。

    编辑:刚刚注意到你对一个好的 iPhone 应用程序不仅仅是 css 和 js 的评论。我认为一个好的 CSS 样式表会给你你需要的东西。 IE 将您的菜单设置为绝对定位的 div,顶部:0 或底部:0 等。移动开发的好处是您的窗口大小不会改变,因此获得像素完美的布局并不难。

    【讨论】:

    • 是的,在大多数情况下,您所说的是真的。但是,看看这个页面:accounting.quickbooks.com/c11/v28.113/884561071/mobile/… 在 safari(模拟 iphone)和 IE(模拟 windows mobile)中,你会发现它们有多么不同......
    • 是的,他们是。这是一个实施选择。在 Safari 页面的情况下,有一些 javascript 来检测 iPhone 的旋转。 IE 版本包含许多似乎与相关页面毫无关系的 javascript 代码。就 HTML 而言,它们并没有太大的不同。 Safari 版本更加精致,仅此而已。我看不出两者之间的 html 不能相同并使用 css 处理布局的任何原因。如果你有兴趣,我可以制作一个样本。
    • 感谢我们的评论。你之前提到你可以做一个绝对定位的div。经过一番研究,我发现并非所有移动浏览器都不支持绝对定位(例如 iphone)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-23
    • 2014-02-02
    • 2020-03-14
    相关资源
    最近更新 更多