iPhoneからアクセスされると専用のビューを表示させるように設定する。
config/initalizes/mime_types.rbの以下の文のコメントアウトをはずす。
Mime::Type.register_alias "text/html", :iphone
動作させたいコントローラーに以下を追記
before_filter :adjust_format_for_iphone
private
def adjust_format_for_iphone
request.format = :iphone if request_iphone?
end
public
def request_iphone?
request.user_agent && request.user_agent[/iPhone|Android/]
end
で、専用のビューを作成する。(ここではindexというコントローラーとindexというアクション名で説明)
layouts/index.iphone.erb #iPhone用のレイアウトファイル
index/index.iphone.erb #index用のレイアウトファイル
あとはそれぞれデザインすればOK。
iPhone用のデザインはUiUIKitというのがあって、それを使うと比較的簡単に作れる。
参考
http://yusukezzz.net/blog/archives/1484
http://d.hatena.ne.jp/t-1732/20100828/1282970904
追記
androidにも対応してみました。
iPhoneと同じデザインですけど。。。
もし個別でやるなら、
private
def adjust_format_for_iphone
request.format = :iphone if request_iphone?
request.format = :android if request_android?
end
public
def request_iphone?
request.user_agent && request.user_agent[/iPhone/]
end
def request_android?
request.user_agent && request.user_agent[/Android/]
end
にして、index.android.erbですかね?
試してないのでわかりません><
0 件のコメント:
コメントを投稿