原文 Windows Phone 8初学者开发—第11部分:设置SounBoard应用程序
原文地址:
系列地址:http://channel9.msdn.com/Series/Windows-Phone-8-Development-for-Absolute-Beginners
源代码: http://aka.ms/absbeginnerdevwp8
PDF版本: http://aka.ms/absbeginnerdevwp8pdf
编写PetSounds应用程序是掌握如何播放媒体的一个不错的方式,但是我们对该应用还有具有商业方面的想法,所以在本课中我们将思考如何开发一个更加健壮的PetSounds版本。它将是一个具有许多不同声音类别的声音面板应用程序,它甚至具备录制自己声音的能力。
因此本课的计划是:
- 我们将通过草图对应用程序的用户界面和用户交互进行描述。
- 我们将通过创建一个新的项目、复制素材到项目中并设置AppResources.resx来建立一个新的应用程序。这些都是以前学习过的内容,但却是对新项目需要执行的任务。
1. 在实体模型上绘制屏幕草图
因为我们正在设计第一个商业应用程序,因此我建议您花一些事件阅读以下内容:
Windows Phone 8 Design Process
https://dev.windowsphone.com/en-us/design/process
此外还有一个用于绘制草图的模板:
http://go.microsoft.com/fwlink/?LinkID=266572
这个模板不仅能够帮助您将想法写在纸上,而且可以记录应用程序与用户交互的思考过程以及向用户提供的反馈。我还可以使用
这个“低端的实体模型”与其他人交流设计和交互的想法,以便在我花时间开发应用程序前收集他们的反馈。这样做的目的是避免因自己做出过多的假设而出现重大
的缺陷。
因此,我使用这个模板记录下了SoundBoard应用程序的草图:
该设计很大程度上受透视应用程序(the Pivot App)项目模板的启发,应用程序中将包含一些枢轴项(PivotItem,或称为“视图”、“类型”),每个枢轴项又包含一些声音磁贴。当您点击某个磁贴时将会播放此声音。
我还希望能够录制声音。在主页面的底部有一个应用栏,点击它将会允许您录制声音。经过思考,我需要三个按钮,我的想法是
我们需要提供一些视觉反馈。我们可以轻松地创建一个类似于1960年代的盘式录音机的卷盘,并在录音时对卷盘增加动画效果。这将向用户提供很好的视觉反
馈。单击应用栏上的保存按钮将允许您为声音提供一个名称,它将以“我的”或“自定义”等类似的名称显示在枢轴项的标题上。
除了设计,获取项目的素材总是需要花些时间和精力。对于本项目,我们将提供声音和相应的图像。说实话,Clint与一位
声音方面的专才和一位图形方面的艺术家花了数小时才准备好这些素材。根据我的经验,创建富有创意的素材的努力从来都不应被低估。对于一个简单的应用程序它
的挑战甚至更大。如果您具有严肃的商业报复,那么您就需要寻找这方面的专家。您会浪费很多时间试图让您的图像和声音刚好说得过去,但是离专业标准还是相去
甚远。不管是网站或应用程序,我从不后悔聘请专业的设计师。他将使得我的产品看上去更加专业。
不管怎么样,通过提前计划并花些时间获得需要的素材,我们的已经勾勒出应用程序的雏形。让我们着手开发这个应用程序。
2. 创建基于Windows Phone透视表应用程序项目模板的SoundBoard项目
选择File | New | Project菜单将打开新项目对话框:
与我们在早先课程中的操作相同:
- 确认您位于Installed | Templates | Visual C# | Windows Phone
- 这次选择Windows Phone透视应用程序项目模板
- 将名称修改为SoundBoard
- 单击确定
3. 替换项目素材
在解决方案管理器中打开Assets文件夹并删除所有文件及子文件夹:
并确认删除。
解开您下载的Assets.zip文件,其中有一个称为SoundBoard_Assets的子文件夹,选择所有文件以及子文件夹:
并拖拽释放到解决方案管理器的SoundBoard项目的Assets文件夹中:
4. 确认项目图标被正确引用
在Properties文件夹中打开WMAppManifest.xml文件:
并确认应用程序图标、小图标和中图标被正确设置:
Windows Phone 8支持三种磁贴模板:翻转、图标和循环。此链接很好的解释了不同类型的磁贴模板:
在本应用程序中,我们的需求很简单。在本系列的后续课程中我们将使用循环模板并学习如何用编程的方式向模板提供一组图像
以循环对其进行显示。个人喜好?我喜欢任何类型的数据可视化,所以我喜欢那些使用图标模板的应用程序,这些模板可以在磁贴上显示的很多的可更新的信息。例
如,在我的手机上有一个天气应用程序,它对磁贴进行更新以显示温度、适度、风力和能见度。我还有一个应用程序可以在磁贴上显示剩余的电量,以及一个倒计时
应用程序用于计算离度假还剩几天。我曾经积极地在应用商店中寻找这样的应用程序,因为我觉得他们可以让我的开始页面变得很酷。
5. 配置主页面从AppResources.resx文件获取标题
虽然我不打算完全本地化我们的应用程序,但是我将对应用程序进行设置以便将来可以很容易地添加这个功能。
打开MainPage.xaml并定位到<phone:Pivot>元素的Title属性。将它修改为:
Title="{Binding Path=LocalizedResources.ApplicationTitle, Source={StaticResource LocalizedStrings}}"
现在我们将在AppResources.resx中修改应用程序的标题。它位于Resources文件夹。
将ApplicationTitle的值修改为"SoundBoard"。保存并关闭此文件。
回顾
综上所述,本课并没有多少新的内容,但是这些都是开始一个新项目时需要执行的任务。我们确实谈论了一些新的主题,比如注重应用程序的设计和交互以及从不同类型的可用模板中进行选择。