2011-08-13 56 views
1

我有一個Sencha Touch應用程序,適用於臺式機Chrome,移動Safari以及Android的默認Internet瀏覽器。Sencha Touch在PhoneGap webview中呈現與在移動Safari中不同的東西

但是,一旦我把它包裝在PhoneGap中,一些嵌套的TabPanels開始渲染時有兩個底座(一個在頂部,一個在底部),子面板不尊重它們的正確大小,有時整個文檔向上移動(與UIStatusBar大約相同的距離,所以我想知道是否有連接)。在這一點上,我並沒有重寫任何Objective-C方法,我幾乎遵循MVC Sencha Touch PhoneGap example的結構。

我所有的CSS以及Sencha CSS都包含在內。

有沒有人在PhoneGap包裝後經歷過移動Safari和webview之間的渲染差異?如果是這樣,甚至更好,有誰解決這樣的問題?

編輯:

我試過幾件事情迄今:

  • 將應用程序遷移JS前/ PhoneGap的JS負載
  • 後更改時/如何document.addEventListener("deviceready"...);
  • .../css/sencha-touch.css更改爲.../css/apple.css
  • 從m中刪除項目實例Ÿ視口的initComponent
  • 移動腳本到body標籤在他們希望得到正確呈現文檔界定

看來板和tabpanels添加就好了,但嵌套tabpanels沒有。請記住,這些相同的嵌套tabpanel在所有其他瀏覽器中完美呈現,然後PhoneGap應用程序會自動包裝雙擊破殼。

+0

我想知道如果web瀏覽器版本的Safari呈現不同,或者如果有一些其他配置我需要改變。 –

回答

0

嗯,我主要是修正了我遇到的外觀差異(減去一些小CSS),但仍然不知道爲什麼Sencha在WebView中呈現與在常規Mobile Safari中不同的效果。

我所做的Sencha更改不應影響其在任何其他桌面或移動webkit瀏覽器中的顯示方式。我最終只是強制隱藏嵌套TabPanel的TabBars(之前沒有呈現)。我正在使用其他方式來設置活動項目,並且從未需要或看到其關聯的TabBars。 (我用這些TabPanels爲他們提供的方法和屬性,但不是他們的相關TabBars。)

在受影響的TabPanels,這樣可以防止殘留TabBars從渲染:

tabBar: { 
    hidden: true, 
    height: 0 
}, 

如果任何人有任何經驗這種渲染差異,仍然可以隨時分享以供將來參考。

相關問題