1. 程式人生 > >使用WPF技術模擬手機界面

使用WPF技術模擬手機界面

http 控件 功能 tex south nav fad phoenix 以及

原文:使用WPF技術模擬手機界面

1. 前言
WPF(Windows Presentation Foundation),即“Windows呈現基礎”,它的目的非常明確,就是用來把數據“顯示”給用戶看的(說白了就是用來做UI的)。接下來將會介紹一個小項目,用WPF來實現模擬手機界面設計。

2. 實現的功能
本項目模擬手機界面,實現了如下幾個功能:

  • 滑動解鎖
  • 頂部狀態欄顯示
  • 查看系統時間
  • 附有背景以及應用圖標的界面及切換
  • 點擊日歷圖標跳轉到顯示日歷的界面
  • 點擊鎖屏圖標進入滑動解鎖狀態

3. 效果展示

  • 滑動解鎖、頂部狀態欄顯示 、查看系統時間
    技術分享圖片
    實現情況:
    1.實現了仿蘋果手機的滑動解鎖效果,同時滑動解鎖模塊上面的文字具有動畫效果。當滑動解鎖箭頭滑動長度不足進度條的一半則箭頭回到起點,超過一半解鎖成功。
    2.在屏幕頂部顯示狀態欄,在鎖屏界面實現顯示系統時間的功能,能夠實時顯示系統時間。

  • 附有背景以及應用圖標的界面及切換
    技術分享圖片技術分享圖片技術分享圖片
    實現情況:
    1.每個頁面必須設置一個背景圖片,每個圖標必須有自己的圖像。
    2.點擊頁面下方的左右箭頭可以實現兩個界面之間的順序切換,點擊中間的home鍵則返回主界面。當界面切換時,具有仿蘋果手機的翻頁效果(淡入淡出的動畫效果),同時可以通過底下的圓點的顏色來判斷當前所在界面。

  • 模擬Icon的事件響應
    技術分享圖片技術分享圖片
    實現情況:
    1.部分應用圖標點擊事件,能夠跳轉到指定界面。點擊日歷則能夠顯示日歷。點擊鎖屏的應用圖標能夠進入滑動解鎖的狀態。

4. 部分功能代碼分析

  • App.xaml
    技術分享圖片
    程序啟動的地方,其實是在程序的App.xaml文件裏面:StartupUri=”Window1.xaml“這個就是程序的入口點,運行程序之後,我們就將window1顯示在了顯示屏上。

  • Window1.xaml
    技術分享圖片
    Page是我們真正的Ui,而NavigationWindow不過是為我們提供了一個框架,Page是附在上面的。因為VS2010不能直接創建NavigationWindow和Page相關的項目,所以我們要自己修改。首先創建一個WPF應用程序,在後臺將繼承的Window類改為NavigationWindow類。然後在XAML中同樣將< window………標記改為NavigationWindow。NavigationWindow上不能有任何控件。。。包括Grid等。。。。記住現在我們的UI是Page。新建Page,在上面隨便畫畫。然後將NavigationWindow.Source設為默認頁面(Default Page)。即將主窗體的XAML裏NavigationWindow的Source屬性設為Page的名字,就OK了。另外Page之間的切換也是很簡單方便的。NavigationService.Navigate(newUri(“XXXXX.xaml”,UriKind.Relative)); XXXXX為Page的名字。

  • Window1.xaml.cs
    技術分享圖片技術分享圖片
    為Page增加淡入淡出(Fade)效果:
    Window1繼承自NavigationWindow,那麽顯然抓住Navigating事件不放,做如下操作:
      取消當前Navigate請求,如果有當前頁的前提下。
      淡出當前頁,如果有當前頁的前提下。
      完成淡出過程後Navigate到目標頁。
      淡入目標頁。

  • Slide.xaml
    技術分享圖片
    用於顯示背景圖片。

  • Slide.xaml.cs
    技術分享圖片
    技術分享圖片
    完成滑動解鎖功能。

技術分享圖片
完成顯示系統時間的功能。

  • Slide.xaml
    技術分享圖片
  • RepeatBehavior:獲取或設置此時間線的重復行為。Forever循環動畫
  • DoubleAnimation:它在指定的持續時間內將動畫從指定的起始值繼續到指定的目標值。
  • From,To:動畫開始到結束變化的值

  • Slide.xaml.cs
    技術分享圖片
    實現了滑動解鎖成功切換到主界面的功能。

  • index.xaml
    技術分享圖片
    技術分享圖片
    實現頁面切換以及頁面底部顯示頁面切換狀態的圓點。

5. 下載鏈接
http://download.csdn.net/download/qq_22408539/10185109

使用WPF技術模擬手機界面