學習筆記之--初探MUI(二)

来源:https://www.cnblogs.com/zhangtinghang/archive/2018/01/17/8303069.html
-Advertisement-
Play Games

初探MUI(二) MUI是一個HTML5前端框架,主要用於手機APP開發。附 "MUI" 官方文檔。以下內容均圍繞MUI進行討論,歡迎大家騷擾^^ <! more 學習心得 學習完MUI基礎理論後,相信很多人都會覺得MUI真的很方便,基本需求都能夠的到滿足,但其實不然,因為MUI有很多的局限性,以及 ...


初探MUI(二)

MUI是一個HTML5前端框架,主要用於手機APP開發。附MUI官方文檔。以下內容均圍繞MUI進行討論,歡迎大家騷擾^^

學習心得

學習完MUI基礎理論後,相信很多人都會覺得MUI真的很方便,基本需求都能夠的到滿足,但其實不然,因為MUI有很多的局限性,以及對某些手機的相容性問題,導致很多時候會出現莫名其妙的BUG。根據個人觀察發現,對於蘋果系統更加的友好,而對於安卓系統,因為碎片化太嚴重,所以應該多找些機型測試。

我遇到過的情況有:
1.底部導航欄(html5):在紅米note2,小米3,華為手機上完美使用,但是oppo一款型號底部導航條出現下移情況(註:底部導航條高度通過JS計算,高度寫死時不會出現),如果遇到,將底部導航條高度寫死。

2.華為手機的虛擬按鍵,如果按照正常的流式佈局下去,當頁面內容多於屏幕高度時,底部有fixed定位的元素時,虛擬按鍵可能會把底部定位的東西遮擋住。(ps:經過測試,華為虛擬按鍵會縮小屏幕實際高度)解決辦法:因為虛擬按鍵會壓縮屏幕高度,而頁面底部距離底部定位時,可以將fixed定位的元素擠壓上去,將body,html頁面高度設置為100%。

3.使用<header></header>時,如果頁面有<input type='text />,此時輸入文字會將<header></header>擠掉,我的解決辦法是:打開軟鍵盤時,擠壓webview,減少視口的高度。但是這樣做有一個問題,如果頁面內容較多,會產生滾動條,給用戶的感覺不好。也可以監聽軟鍵盤打開事件,動態調整頁面。下麵僅給出最簡單的解決方案:

        mui.plusReady(function () {             
            plus.webview.currentWebview().setStyle({
                        softinputMode: "adjustResize"
                    });
        });

4.使用原生底部導航條,目前遇到的問題是,真機測試時,在蘋果6上完美渲染,測試相關邏輯都成功,但是在紅米note2上,有兩個ICON渲染不出來,只渲染出來了底部導航欄的高度,具體情況尚在測試中。。。。

學習總結

1.在調試MUI項目時,我認為應該先使用安卓手機調試,因為我幾次都是在蘋果手機上成功調試,但是將源碼放到安卓手機上時,出現各種未知的BUG,所以前期測試使用安卓手機,等程式調試完成後,再去蘋果手機上測試。

2.因為現在很多人都追求使用原生來寫html5,在官方還沒發佈正式的底部導航條時,就自己按照社區的經驗,自己改了一個底部導航條,但是因為打開新的頁面時,底部原生導航條不會隱藏,所以沒辦法,還是只能採用mui提供的底部導航條,所以,對於mui的探索,還是需要自己去多研究,例如:和原生相關的界面渲染,操作原生的內容,調用原生JS等,都需要仔細的研究。所以,我覺得,如果有一定的安卓或者IOS開發經驗的人來說比較的容易理解,但是對於一個前端開發人員來說,這一塊肯定是學習的重點。

後記


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 我們在上一篇文章中講到了JS中變數的概念,本篇文章講一下運算符和表達式。 ...
  • 1、children與childNodes children: 獲取子元素節點,無相容問題 childnNodes: IE:獲取子元素節點 非IE(chrome,Firefox等):獲取子節點,包括元素節點和文本節點 2、firstChild與firstElementChild firstChild ...
  • 1、absolute和float 擁有相同的特性表現: ①包裹性(容器應用之後,可以包裹裡面的內容); ②破壞性(內容應用之後,會破壞父容器) 2、absolute和relative absolute和relative是分離的,對立的。父容器是relative,子元素是absolute,可以限制子元 ...
  • 相信很多朋友在製作表單的時候,我們的編輯器會有下圖的相關提示吧 我們發現雖然這樣並不影響我們的正常使用,但是看著這樣的報錯提示總是很讓人心煩,那麼這到底是為什麼呢? 其實,這是因為編輯器建議我們在使用<input>標簽時,用相應的<lable>標簽對其進行標記。不想百度的同學可以繼續往下看嘍: <l ...
  • 在上一節中,最後返回了一個resolver,本質上就是一個Resolver對象: 這個對象的構造函數非常簡單,只是簡單的繼承了Tapable,並接收了fileSystem參數: resolve 而在make事件流中,調用的正是該類的原型方法resolve,現在可以進行看一眼了: 需要註意的是,該方法 ...
  • JavaScript基礎分為三個部分:ECMAScript(JavaScript的語法標準)、DOM(操作網頁上的元素的API)、BOM(操作瀏覽器部分功能的API) ...
  • 先上圖: 說明:這是基於移動端的,對於PC端瀏覽器支持不是很好(我測的結果是IE無效),另外這個swiper是4.x版本的 先引用css css樣式: 1 <style type="text/css"> 2 .container { width: 100%; } 3 /*頭部*/ 4 .top-da ...
  • 1、概念 詞法作用域:定義在詞法階段的作用域,即書寫代碼時函數聲明的位置決定的。詞法分析器處理代碼時會保持作用域不變(大部分是這樣的),會知道全部標識符在哪裡以及如何聲明的,從而預測在執行過程中如何對他們進行查找。 2、作用域查找 作用域會在找到第一個標識符時停止,存在“遮蔽效應”。 3、欺騙詞法 ...
一周排行
    -Advertisement-
    Play Games
  • .Net8.0 Blazor Hybird 桌面端 (WPF/Winform) 實測可以完整運行在 win7sp1/win10/win11. 如果用其他工具打包,還可以運行在mac/linux下, 傳送門BlazorHybrid 發佈為無依賴包方式 安裝 WebView2Runtime 1.57 M ...
  • 目錄前言PostgreSql安裝測試額外Nuget安裝Person.cs模擬運行Navicate連postgresql解決方案Garnet為什麼要選擇Garnet而不是RedisRedis不再開源Windows版的Redis是由微軟維護的Windows Redis版本老舊,後續可能不再更新Garne ...
  • C#TMS系統代碼-聯表報表學習 領導被裁了之後很快就有人上任了,幾乎是無縫銜接,很難讓我不想到這早就決定好了。我的職責沒有任何變化。感受下來這個系統封裝程度很高,我只要會調用方法就行。這個系統交付之後不會有太多問題,更多應該是做小需求,有大的開發任務應該也是第二期的事,嗯?怎麼感覺我變成運維了?而 ...
  • 我在隨筆《EAV模型(實體-屬性-值)的設計和低代碼的處理方案(1)》中介紹了一些基本的EAV模型設計知識和基於Winform場景下低代碼(或者說無代碼)的一些實現思路,在本篇隨筆中,我們來分析一下這種針對通用業務,且只需定義就能構建業務模塊存儲和界面的解決方案,其中的數據查詢處理的操作。 ...
  • 對某個遠程伺服器啟用和設置NTP服務(Windows系統) 打開註冊表 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer 將 Enabled 的值設置為 1,這將啟用NTP伺服器功 ...
  • title: Django信號與擴展:深入理解與實踐 date: 2024/5/15 22:40:52 updated: 2024/5/15 22:40:52 categories: 後端開發 tags: Django 信號 松耦合 觀察者 擴展 安全 性能 第一部分:Django信號基礎 Djan ...
  • 使用xadmin2遇到的問題&解決 環境配置: 使用的模塊版本: 關聯的包 Django 3.2.15 mysqlclient 2.2.4 xadmin 2.0.1 django-crispy-forms >= 1.6.0 django-import-export >= 0.5.1 django-r ...
  • 今天我打算整點兒不一樣的內容,通過之前學習的TransformerMap和LazyMap鏈,想搞點不一樣的,所以我關註了另外一條鏈DefaultedMap鏈,主要調用鏈為: 調用鏈詳細描述: ObjectInputStream.readObject() DefaultedMap.readObject ...
  • 後端應用級開發者該如何擁抱 AI GC?就是在這樣的一個大的浪潮下,我們的傳統的應用級開發者。我們該如何選擇職業或者是如何去快速轉型,跟上這樣的一個行業的一個浪潮? 0 AI金字塔模型 越往上它的整個難度就是職業機會也好,或者說是整個的這個運作也好,它的難度會越大,然後越往下機會就會越多,所以這是一 ...
  • @Autowired是Spring框架提供的註解,@Resource是Java EE 5規範提供的註解。 @Autowired預設按照類型自動裝配,而@Resource預設按照名稱自動裝配。 @Autowired支持@Qualifier註解來指定裝配哪一個具有相同類型的bean,而@Resourc... ...