Win8處女作《現代教育技術》發布快一周了,小小總結下。
項目總共三個平台,iPad、Web、Win8,獨立完成了iPad版及Win8版,也算完整了,=.=。
iPad版:
是一個native+html的項目,主要解決的技術點是WebView的Page Scroll的效果,以及OC與JS的互動,如OC怎麼監聽JS事件。
具體可參考我的博文:iOS:UIWebView scrollView 的分頁滑動問題
iOS: 在Object-C中監聽javascript事件( Javascript communicating back with Objective-C code)
Win8版:
Win8的開發我們使用的開發方式是HTML5+CSS3+WInjs。html+css主要作用於視圖層,winjs實現於邏輯層。所以要找到類MVC模式還是有的。項目之後也對前端的一些技術有瞭解到了。
畢竟是剛出來的平台,在項目的細節處會體驗到MS在一些api細節做得還不夠完善,一些實現有時得繞著圈才能完成。
項目一個要解決的問題是適配多解析度。現在win8在開發中適配問題介於iOS和Android之間,它沒有iOS不必為多解析度適配擔憂,但也沒有Android的種類繁多。但是解決的話還是能從Android中借鑒一些經驗過來的,比如其中用得最多的就是利用百分比的方法去實現。
1、css中所有用到大小、長寬的都只能使用百分比去設定;
2、面對listview的時候,有時css的 設定item size不能滿足效果,就需要在js動態做調整:e.g.
擷取螢幕可用寬高:
在listview template中設定:
剩下的更多的是介面排布的問題,這個得用html css去做,前端的知識會有協助。
項目發現用這種方式開發的話,沒有webview的控制項,webview在C#,xaml的開發方式中才有。這個很不方便,雖然html有iframe替代,但是我們很難去同IFrame的內容互動,這會導致直接不能同web端互動,不夠靈活。
但是MS對開發Win8 modern App 提供2種方案,無疑是想吸引更多開發人員,C# xaml的方案比較適用於Android或 ios開發人員轉移,winjs的方案更使用於web 開發人員轉移。如果你會web開發,上手win8開發其實會是十分容易的事。
最後貼下2個平台產品的圖:
ipad::https://itunes.apple.com/cn/app/xian-dai-jiao-yu-ji-shu/id595581360?mt=8
Win8: :http://apps.microsoft.com/windows/zh-CN/app/6731b692-b272-4784-9f91-a78b457685eb