Windows 8 开发笔记整理(一)
来源:互联网 发布:贵州大数据产业 编辑:程序博客网 时间:2024/05/19 03:21
1.视图状态:fullscreenportrait FullScreenLandscape snapped(程序只占屏幕一小部分) filled(程序占了snapped宽度剩余的区域)
在设计器里分别设计几种视图 然后监听视图改变事件,以进行相应的处理
其中 SizeChanged += MainView_SizeChanged;是注册事件。ApplicationView.value是获取当前视图状态的值。值类型定义如下:下面是文件MainPage.xaml.cs 代码:其中方法MainView_SizeChanged 根据不同的视图状态切换到不同的视图,以为用户提供不同的布局
3.颜色选择器:
writeableBitmap中的Render方法不可用了,这样的话writeablebitmap无法与多边形控件交互。
这样的话就首先要把轨迹轮廓绘制到writeablebitmap上。
在设计器里分别设计几种视图 然后监听视图改变事件,以进行相应的处理
其中 SizeChanged += MainView_SizeChanged;是注册事件。ApplicationView.value是获取当前视图状态的值。值类型定义如下:
04
public
enum
ApplicationViewState
05
{
06
// 摘要:
07
// 当前应用程序的视图为全屏(没有预期相邻的对齐的应用程序)并且已更改为横向。
08
FullScreenLandscape = 0,
09
//
10
// 摘要:
11
// 当前应用程序视图已缩小到部分屏幕视图作为另一个应用程序对齐的结果。
12
Filled = 1,
13
//
14
// 摘要:
15
// 当前应用程序的视图已对齐。
16
Snapped = 2,
17
//
18
// 摘要:
19
// 当前应用程序的视图为全屏(没有预期相邻的对齐的应用程序)并且已更改为纵向。
20
FullScreenPortrait = 3,
21
}
public LandPaperCutHandPaint()
{
this.InitializeComponent();
SizeChanged += MainView_SizeChanged;
}
void MainView_SizeChanged(object sender, SizeChangedEventArgs e)
{
if (ApplicationView.Value == ApplicationViewState.FullScreenLandscape)
{
}
if (ApplicationView.Value == ApplicationViewState.FullScreenPortrait)
{
Frame.Navigate(typeof(PaperCutHandPaint));
}
if (ApplicationView.Value == ApplicationViewState.Filled)
Frame.Navigate(typeof(PaperCut.FilledMainPage));
if (ApplicationView.Value == ApplicationViewState.Snapped)
Frame.Navigate(typeof(PaperCut.SnappedMainPage));
} 另外后来发现可以设置页面固定在一个视图状态上,只是在模拟器上看不到设置的效果,在真实的机器上可以看到。
2.触控操作:这边的触屏操作已经变得简单多了,只需要在image控件定义一个CompositeTransform对象,然后根据触屏函数参数中的成员变量来进行相应的改变即可protected override void OnManipulationDelta(ManipulationDeltaRoutedEventArgs args) //控制相应的拖动、放大和旋转
{//重写触屏函数
if (isDragging == true)
{
transform.TranslateX += args.Delta.Translation.X;
transform.TranslateY += args.Delta.Translation.Y;
transform.ScaleX *= args.Delta.Scale;
transform.ScaleY *= args.Delta.Scale;
transform.Rotation += args.Delta.Rotation;
base.OnManipulationDelta(args);
}
} 3.颜色选择器:
在codeplex下载开源项目coding4fun的源代码,根据颜色选择器的源代码添加到win8的app中
4.最大的难点是writeableBitmap中的Render方法不可用了,这样的话writeablebitmap无法与多边形控件交互。
这样的话就首先要把轨迹轮廓绘制到writeablebitmap上。
考虑过使用writeablebitmapEx的setpixel方法,来将多义线控件的坐标写到writeablebitmap上,但是这个方法效率太低。
0 0
- Windows 8 开发笔记整理(一)
- windows phone 8 开发学习笔记(一)
- Windows 驱动开发笔记(一)
- Windows Phone 开发学习笔记(一) 开发环境搭建
- 初学JavaScript,整理整理笔记(一)
- 3518整理笔记(一)
- 纸质笔记整理(一)
- C++笔记整理(一)
- Windows Vista 开发MSDN学习笔记(一)
- android开发笔记一:环境的搭建(windows下)
- (整理篇一)在windows环境下搭载Android开发环境
- Windows 8 Directx开发学习笔记(一)应用基本框架
- windows下rabbitmq 常用命令整理(一)
- windows应用程序开发笔记一:windows应用程序介绍
- J2ME学习笔记整理(一)
- J2ME学习笔记整理(一)
- D3D学习笔记整理(一)
- Delphi的笔记整理(一)
- A+B for Input-Output Practice (I) 1.1.1
- 开源中最好的Web开发的资源
- 分析认为Windows XP还将在中国市场存活2—3年
- 游戏服务器笔记
- opencv自带的CamShift算法使用工程实例
- Windows 8 开发笔记整理(一)
- js 对象创建方式之一
- JDBC接口概述
- oracle数据库之间数据同步 DBLINK
- 将webserver接口转JSON 方便测试
- 13_IO(其他常用类)(下)
- Java中this关键字的整理
- 你真的了解互联网吗?
- Pascal's Triangle