使用Ruby on Rails和Eclipse开发iPhone应用程序,第2部分 - 编程入门网
_iui 插件,则可以简单表达为 <%= include_iui_files %>。
至此,您已经为创建 iPhone 内容做好准备。 使用Ruby on Rails和Eclipse开发iPhone应用程序,第2部分(4)时间:2011-11-29 ibm developerWorks Noel Rappin创建 iPhone 布局 在原始版本的 Soups OnLine 应用程序中,导航部分位于侧边栏,正文内容位于中央。这不适用于 iPhone,因此,我将把这个应用程序转换为列表结构。应用程序的主页将以列表的形式包含基本相同的导 航选择,并且用户可以向下钻取每个条目。例如,Recipes 导航条目将把用户带到另一个条目,这个条目 显示了最近添加的 “食谱”,并且还可以选择显示更多的条目。这里的每个条目将链接到特定 “食谱” 的显示页面 。 我将从 3 个层次讨论这些代码: rails_iui 插件定义的 Rails helper 这个插件使用 iUI 定义的样式类生成的 HTML 在非 iUI 项目中要用到的关于 CSS 本身的一些详细信息 在默认情况下,iUI 会覆盖对单击正常链接的响应。iUI 执行 Ajax 调用并且重新绘制页面的可见区 域,而不是重新绘制整个页面。因此,iUI 可以为每个链接添加一种向侧面滑动的效果,这种效果类似于 在 iPhone 的 iPod 应用程序中下钻艺术家或专辑列表时产生的效果。通过在锚标记中更改 target 属性 ,可以用两种方式对此进行覆盖。如果链接目标是 _self,将使用刷新整个页面的正常超链接行为。如果 链接目标是 _replace,将使用服务器请求的结果代替锚标记。 从 Rails 的角度看,iUI 结构意味着正文布局仅呈现一次。在这之后,所有调用都是 Ajax 调用。即 使是常规的 link_to 调用,也必须作为 Ajax 调用和 :layout => false 一起发布。此外,这还意味 着对于 iPhone Web 应用程序中的简单 Ajax 活动,不需要使用 link_to_remote。 所以这个应用程序的初始用户页面仅是导航部分。这意味着必须为应用程序设置一个默认路径。这个 应用程序没有呈现自己的文本,仅显示正文导航的布局。如果缺乏明显的位置来放置这个路径,那么通过 向 config/routes.rb file 添加下面的行,将它添加到在第 1 部分中创建的 BrowsersController: map.root :controller => "browsers"。 控制器操作在 app/controllers/browsers_controller 中进行,并且很简单。 清单 1. 默认布局路径-控制器操作 layout "recipes" def index respond_to do |format| format.html {redirect_to recipes_url} format.iphone {render :text => "", :layout => true} end end 使用Ruby on Rails和Eclipse开发iPhone应用程序,第2部分(5)时间:2011-11-29 ibm developerWorks Noel Rappin在 iPhone 中,仅呈现没有文本的布局。如果请求的是 HTML,它会重定向到 RecipesController 索 引页面,这个页面是应用程序的桌面视图的主页面。 iPhone 的呈现活动在呈现器中进行,目前正在调用一些由 rails_iui 插件定义的 helper 函数,根 据 iUI 的要求设置页面,如清单 2 所示。(如果 rails_iui 插件放置在 Rails 应用程序的 vendor/plugin/rails_iui 目录下,rails_iui helper 将自动应用到所有视图)。 清单 2. iPhone 主导航栏的布局正文 <body> <%= iui_toolbar "Soups OnLine", new_search_url %> <%= iui_list iphone_menu.items, :top => content_tag(:h1, "Soups OnLine", :class => "header"), :bottom => link_to ("Switch To Desktop View", {:controller => "browsers", |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |