使用Ruby on Rails和Eclipse开发iPhone应用程序,第3部分 - 编程入门网
s,
:with => "''position='' + String(window.orientation)"
func = "function() { #{remote}; };"
javascript_tag("function updateOrientation() { #{remote}; }")
end
使用Ruby on Rails和Eclipse开发iPhone应用程序,第3部分(8)时间:2011-11-29 ibm developerWorks Noel Rappin此方法将使用 Rails 标准 remote_function 助手创建一个 JavaScript 回调(使用传递给该助手的 URL 信息),并且在 script 标记内输出函数。对服务器的回调包含一个参数:position。如果设备处于正常 的垂直纵向位置,则变量值为 "0",如果电话沿逆时针方向转动,则变量值为 "90",而如果电话沿顺时 针方向转动,则变量值为 "-90"(设备目前不能识别颠倒位置,但是如果将来可以支持这种旋转,则值将 是 "180")。通过回调,您可以完成 Rails RJS JavaScript 模板可以完成的所有操作,包括更改屏幕中 的任意一个文档对象模型(Document Object Model,DOM)对象。 通过这两种机制,您可以轻松地对改变浏览器方向作出反应。 最后几点兼容性说明 本系列应当为创建 iPhone 专用的 Web 应用程序提供了良好开端。下面是需要牢记的几点: iPhone 将自动检测诸如电话号码之类的内容,并且允许用户使用电话键入这些内容来打电话(iPod 不执行此检测)。您可以用 <meta name = "format-detection" content = "telephone=no"> 元标记关闭页面中的这项功能。然后,通过将电话号码转换为表单 <a href="tel:555-1234">555-1234</a> 的 HTML 链接,您可以明确地识别电话号码。 指向 Google Maps 页面的链接将退出 Mobile Safari 并打开 Maps 应用程序。同样,指向 YouTube 页面的链接将打开 YouTube 应用程序。 JavaScript 函数 alert、confirm 和 prompt 也可以在 iPhones 中工作,但是 showModalDialog 不可以。在 iUI 中,dialog CSS 类将模拟一些对话框行为,覆盖在屏幕上面。 现在,不能在 Mobile Safari 浏览器中使用 Flash、Java应用程序、无线标记语言(Wireless Markup Language,WML)、可伸缩向量图形(Scalable Vector Graphics,SVG)和可扩展样式表语言转换(Extensible Stylesheet Language Transformation,XSLT)。不支持文件上传和下载,尽管这种情况可能在 iPhone 固件 2.0 版本中改变。Mouse-over 事件、工具提示和悬浮样式也不起作用。 解码时,图形交换格式(Graphics Interchange Format,GIF)、可移植网络图形(Portable Network Graphics,PNG)和标签图像文件格式(Tagged Image File Format,TIFF)图像必须小于或等于 2M 像素。子采样为大于 2M 像素、小于 32M 像素的 JPEG 图像。单个文本或媒体文件必须小于 10 MB。 iPhone 和 iPod touch 允许用户在主屏幕中放置表示特定 Web 应用程序的图标。要给应用程序提供自定义图标,请在 /apple-touch-icon.png 中放置 PNG 文件。图标应当是 57 个像素的方角正方形。请不要尝试包括手机图标拥有的光泽。iPhone 或 iPod-touch 操作系统将自动把角变圆,并且添加光泽效果。 结束语 今年是 iPhone 和 iPod touch 辉煌的一年。当 2.0 版本添加第三方原生应用程序时,对于支持 iPhone 的 Web 应用程序的需求只会增长。iUI 工具包和 rails_iui 插件将继续帮助所有开发人员轻松地创建优秀的 Mobile Safari 应用程序。 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |