成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

31天學(xué)會(huì)Windows Phone 7開發(fā):加速感應(yīng)器

移動(dòng)開發(fā)
本文是《Windows Phone 7開發(fā)31日談》系列的第十一篇文章,上一篇,我們討論了Windows Phone的軟鍵盤。本文,來談?wù)劵谟布募铀俑袘?yīng)器以及如何利用它提供的信息。

上一篇,我們討論了Windows Phone的軟鍵盤。本文,來談?wù)劵谟布募铀俑袘?yīng)器以及如何利用它提供的信息。

什么是加速感應(yīng)器?

目前缺乏一個(gè)更好的定義,Windows Phone設(shè)備中的加速度感應(yīng)器是用來度量3個(gè)坐標(biāo)軸加速度的裝置,這里說的加速度是相對(duì)于自由落體加速度的。除了一個(gè)時(shí)間戳之外,值都是用重力值(G)表示的(1G = 9.81 m/s2)。這意味著如果將電話正面朝上平放在一個(gè)絕對(duì)的平面上,Z軸應(yīng)該為-1.0,其他兩個(gè)軸的數(shù)據(jù)為0。下面的圖例演示了不同的值(感謝的來自于WindowsTeamBlog的圖片):

加速感應(yīng)器

如何從WP7的加速感應(yīng)器中獲取數(shù)據(jù)?

幸好,這非常簡單。復(fù)雜的是我們需要管理一些線程,但其實(shí)也很簡單。下面是我們所要做的:

1.初始化一個(gè)Accelerometer對(duì)象。

2.創(chuàng)建一個(gè)ReadingChanged()事件處理程序來監(jiān)視數(shù)據(jù)的變化。

3.將事件中的結(jié)果傳回我們的頁面線程(這個(gè)事件是在另一個(gè)線程中觸發(fā)的)。

4.在程序中使用這些數(shù)據(jù)。

這是我這個(gè)例子中MainPage.xaml.cs的全部內(nèi)容。你會(huì)看到我在MainPage.xaml文件中創(chuàng)建了3個(gè)TextBlock(XText, YText和ZText) ,所以我可以在屏幕中顯示這些值。同樣還可以看到我添加了一個(gè)Microsoft.Devices.Sensors名稱空間的引用來訪問Accelerometer類。

  1. using System;  
  2. using System.Collections.Generic;  
  3. using System.Linq;  
  4. using System.Net;  
  5. using System.Windows;  
  6. using System.Windows.Controls;  
  7. using System.Windows.Documents;  
  8. using System.Windows.Input;  
  9. using System.Windows.Media;  
  10. using System.Windows.Media.Animation;  
  11. using System.Windows.Shapes;  
  12. using Microsoft.Phone.Controls;  
  13. using Microsoft.Devices.Sensors;  
  14.  
  15. namespace Day11_Accelerometer  
  16. {  
  17.  public partial class MainPage : PhoneApplicationPage  
  18.  {  
  19.   Accelerometer acc = new Accelerometer();  
  20.  
  21.   // Constructor  
  22.   public MainPage()  
  23.   {  
  24.    InitializeComponent();  
  25.    acc.ReadingChanged += new EventHandler<AccelerometerReadingEventArgs>(acc_ReadingChanged);  
  26.    acc.Start();  
  27.   }  
  28.  
  29.   void acc_ReadingChanged(object sender, AccelerometerReadingEventArgs e)  
  30.   {  
  31.    Deployment.Current.Dispatcher.BeginInvoke(() => ThreadSafeAccelerometerChanged(e));  
  32.   }  
  33.  
  34.   void ThreadSafeAccelerometerChanged(AccelerometerReadingEventArgs e)  
  35.   {  
  36.    XText.Text = e.X.ToString("0.000");  
  37.    YText.Text = e.Y.ToString("0.000");  
  38.    ZText.Text = e.Z.ToString("0.000");  
  39.   }  
  40.  }  

 

模擬器不能模擬加速感應(yīng)器的數(shù)據(jù)

是的。如果你下載了本文***的代碼,肯定會(huì)納悶為什么Z軸數(shù)據(jù)總是-1呢,這是因?yàn)槟M器認(rèn)為它是在平面上的。它沒有(有效的)方法來模擬加速感應(yīng)器的數(shù)據(jù)。但是有一些聰明人找到了讓這成為現(xiàn)實(shí)的方法。本篇文章剩下的部分讓我很為難。我很想給每個(gè)模擬器解決方案寫一個(gè)例子,但是還有這么多好的方法來模擬加速感應(yīng)器數(shù)據(jù),我認(rèn)為讓你們知道這些比僅僅寫代碼示例要好。這有很多建議供你去實(shí)驗(yàn)(每個(gè)站點(diǎn)都提供了代碼示例):

Reactive Extensions

Reactive Extensions是一個(gè)框架允許你為加速感應(yīng)器(還有位置服務(wù),我會(huì)在第13日中介紹)模擬數(shù)據(jù)而無需真實(shí)設(shè)備。實(shí)際上你無法控制這個(gè)動(dòng)作,它只能給你產(chǎn)生隨機(jī)數(shù)據(jù)。安裝起來非常簡單,而且相比于因?yàn)闆]有真實(shí)的手機(jī)而不能開發(fā)來說十分地高效。

accelKit

這個(gè)可能是最酷的選擇了。它利用攝像頭和增強(qiáng)現(xiàn)實(shí),允許你移動(dòng)手機(jī)的打印圖就像在真實(shí)世界中移動(dòng)它一樣。它是如此的酷以至于使我神魂顛倒,有兩點(diǎn)原因:

1.它允許你真正地模擬動(dòng)作。

2.它利用了增強(qiáng)現(xiàn)實(shí),人。這是一個(gè)了不起的技術(shù)應(yīng)用。

WiimoteLib

這個(gè)庫不僅僅能用于Windows Phone模擬器,不過它確實(shí)可以為我們的目的非常好的工作。故事是這樣的:如果你有一個(gè)任天堂的Wii,你可以用控制器(一個(gè)Wii遙控器)來生成你的加速感應(yīng)器數(shù)據(jù)。

Windows Mobile Unified Sensor API

是的,就是“Windows Mobile”。這是在某些類型的Windows Mobile 6.x 設(shè)備上與加速感應(yīng)器交互的方式。這篇文章描述了一種利用這種技術(shù)在Windows Phone上開發(fā)的方法。他們好像沒有提供代碼示例,但看起來非常簡單。

下載代碼示例

原作者:Jeff Blankenburg    譯者:金山崟霸

中文來源:http://www.cnblogs.com/porscheyin/archive/2010/12/22/1914215.html

英文來源:http://www.jeffblankenburg.com/2010/10/11/31-days-of-windows-phone-day-11-accelerometer/

【編輯推薦】

  1. 31天學(xué)會(huì)Windows Phone 7開發(fā):輸入范圍和文本框
  2. 31天學(xué)會(huì)Windows Phone 7開發(fā):調(diào)試技巧
  3. 31天學(xué)會(huì)Windows Phone 7開發(fā):選擇器
  4. 31天學(xué)會(huì)Windows Phone 7開發(fā):啟動(dòng)器
  5. 31天學(xué)會(huì)Windows Phone 7開發(fā):工具欄
責(zé)任編輯:王曉東 來源: 博客
相關(guān)推薦

2012-06-20 10:21:50

Windows Pho

2012-06-21 10:59:31

Windows Pho

2012-06-13 13:01:57

Windows Pho

2012-08-02 10:16:39

Windows Pho

2012-06-06 13:48:34

Windows Pho

2012-06-11 13:08:10

Windows Pho

2012-08-01 10:26:33

Windows Pho

2012-08-09 13:39:22

Windows Pho

2012-08-16 11:31:30

Windows Pho

2012-06-12 10:43:20

Windows Pho

2012-08-13 09:56:45

Windows Pho

2012-06-25 16:14:26

Windows Pho

2012-06-07 09:33:13

Windows Pho

2012-06-19 09:31:53

Windows Pho

2012-07-13 14:41:12

2012-07-24 10:15:34

Windows Pho

2012-07-31 09:44:27

Windows Pho

2012-06-29 14:13:10

2013-04-19 16:52:24

Windows PhoWindows Pho

2013-07-30 11:18:37

Windows PhoWindows Pho
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 国产成人精品久久二区二区91 | 亚洲一区二区三区欧美 | 久久精品成人 | 国产精品揄拍一区二区 | 久久精品国产亚洲一区二区 | 国产精品久久久久久久久久 | 国产不卡一区 | 日韩精品一区二区三区视频播放 | 中文字幕一区二区三区不卡 | 成人一区二| 国产丝袜一区二区三区免费视频 | 中文字幕一区二区三区四区五区 | 午夜精品一区二区三区免费视频 | 久久久91精品国产一区二区三区 | 精品视频一区二区 | 精品久久一区 | 亚洲精品国产一区 | 国产精品成人一区二区三区 | 伊人在线 | 美女爽到呻吟久久久久 | 成人午夜黄色 | 欧美久久免费观看 | 欧美成人一级 | 国产视频久久久 | 精品国产乱码久久久久久久久 | 九九综合| 国产精品一区二区三区在线 | 国产美女视频黄a视频免费 国产精品福利视频 | 九九av | 国产一区二区三区四区三区四 | 在线中文视频 | 欧美一级片在线观看 | 国产在线一区二区 | 国产www. | 欧美在线一区二区三区 | 一区二区在线不卡 | 国产精品久久久久久久一区探花 | 一本一道久久a久久精品蜜桃 | 国产在线视频在线观看 | 日韩午夜 | 国产精品国产亚洲精品看不卡15 |