与众不同 windows phone (36) - 8.0 新的瓷贴: FlipTile, CycleTile, IconicTile
作者:webabcd
介绍
与众不同 windows phone 8.0 之 新的瓷贴
- FlipTileData - 翻转瓷贴。继承了 wp7 时代的 StandardTileData
- CycleTileData - 循环瓷贴
- IconicTileData - 图标瓷贴
示例
1、演示 FlipTileData 的应用
Tile/FlipTile.xaml
<phone:PhoneApplicationPage
x:Class="Demo.Tile.FlipTile"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
FontFamily="{StaticResource PhoneFontFamilyNormal}"
FontSize="{StaticResource PhoneFontSizeNormal}"
Foreground="{StaticResource PhoneForegroundBrush}"
SupportedOrientations="Portrait" Orientation="Portrait"
mc:Ignorable="d"
shell:SystemTray.IsVisible="True"> <Grid x:Name="LayoutRoot" Background="Transparent">
<ScrollViewer>
<StackPanel>
<Button Name="btnPin" Content="pin the flip tile" Margin="0 0 0 10" Click="btnPin_Click" />
<Image Source="/Tile/FlipTile1.png" />
<Image Source="/Tile/FlipTile2.png" />
<Image Source="/Tile/FlipTile3.png" />
</StackPanel>
</ScrollViewer>
</Grid> </phone:PhoneApplicationPage>
Tile/FlipTile.xaml.cs
/*
* FlipTileData - 翻转瓷贴。继承了 wp7 时代的 StandardTileData
* Title - 正面标题
* SmallBackgroundImage - 小图块正面背景
* BackgroundImage - 中图块正面背景
* WideBackgroundImage - 宽图块正面背景
* Count - 正面显示的 badge (徽章),范围 1 - 99
* BackTitle - 背面标题
* BackBackgroundImage - 中图块背面背景
* WideBackBackgroundImage - 宽图块背面背景
* BackContent - 中图块背面内容
* WideBackContent - 宽图块背面内容
*
* 小图块大小:159 × 159
* 中图块大小:336 × 336
* 宽图块大小:691 × 336
*
* 另:application icon 的大小是 100 × 100
*
* 关于 Tile 的更多内容参见:
* http://www.cnblogs.com/webabcd/archive/2012/06/27/2564975.html
* http://www.cnblogs.com/webabcd/archive/2012/07/05/2577190.html
*/ using System;
using System.Windows;
using Microsoft.Phone.Controls;
using Microsoft.Phone.Shell; namespace Demo.Tile
{
public partial class FlipTile : PhoneApplicationPage
{
public FlipTile()
{
InitializeComponent();
} private void btnPin_Click(object sender, RoutedEventArgs e)
{
FlipTileData flipTile = new FlipTileData()
{
Title = "title",
BackTitle = "backTitle",
BackContent = "backContent",
WideBackContent = "wideBackContent",
Count = ,
SmallBackgroundImage = new Uri("/Assets/AppTile.png", UriKind.Relative),
BackgroundImage = new Uri("/Assets/AppTile.png", UriKind.Relative),
WideBackgroundImage = new Uri("/Assets/AppTile.png", UriKind.Relative),
BackBackgroundImage = new Uri("/Assets/AppTile.png", UriKind.Relative),
WideBackBackgroundImage = new Uri("/Assets/AppTile.png", UriKind.Relative),
}; // 最后一个参数为是否支持宽图块
ShellTile.Create(new Uri("/MainPage.xaml", UriKind.Relative), flipTile, true);
}
}
} /*
通过 xml 方式构造 flip tile 数据
<?xml version="1.0" encoding="utf-8"?>
<wp:Notification xmlns:wp="WPNotification" Version="2.0">
<wp:Tile Id="[Tile ID]" Template="FlipTile">
<wp:SmallBackgroundImage [Action="Clear"]>[small Tile size URI]</wp:SmallBackgroundImage>
<wp:WideBackgroundImage Action="Clear">[front of wide Tile size URI]</wp:WideBackgroundImage>
<wp:WideBackBackgroundImage Action="Clear">[back of wide Tile size URI]</wp:WideBackBackgroundImage>
<wp:WideBackContent Action="Clear">[back of wide Tile size content]</wp:WideBackContent>
<wp:BackgroundImage Action="Clear">[front of medium Tile size URI]</wp:BackgroundImage>
<wp:Count Action="Clear">[count]</wp:Count>
<wp:Title Action="Clear">[title]</wp:Title>
<wp:BackBackgroundImage Action="Clear">[back of medium Tile size URI]</wp:BackBackgroundImage>
<wp:BackTitle Action="Clear">[back of Tile title]</wp:BackTitle>
<wp:BackContent Action="Clear">[back of medium Tile size content]</wp:BackContent>
</wp:Tile>
</wp:Notification>
*/
2、演示 CycleTile 的应用
Tile/CycleTile.xaml
<phone:PhoneApplicationPage
x:Class="Demo.Tile.CycleTile"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
FontFamily="{StaticResource PhoneFontFamilyNormal}"
FontSize="{StaticResource PhoneFontSizeNormal}"
Foreground="{StaticResource PhoneForegroundBrush}"
SupportedOrientations="Portrait" Orientation="Portrait"
mc:Ignorable="d"
shell:SystemTray.IsVisible="True"> <Grid x:Name="LayoutRoot" Background="Transparent">
<ScrollViewer>
<StackPanel>
<Button Name="btnPin" Content="pin the cycle tile" Margin="0 0 0 10" Click="btnPin_Click" />
<Image Source="/Tile/CycleTile1.png" />
<Image Source="/Tile/CycleTile2.png" />
<Image Source="/Tile/CycleTile3.png" />
</StackPanel>
</ScrollViewer>
</Grid> </phone:PhoneApplicationPage>
Tile/CycleTile.xaml.cs
/*
* CycleTileData - 循环瓷贴
* Title - 标题
* smallBackgroundImage - 小图块背景
* Count - badge (徽章),范围 1 - 99
* CycleImages - 中图块和宽图块所循环显示的背景图片的集合(最多 9 张图片)
*
* 小图块大小:159 × 159
* 中图块大小:336 × 336
* 宽图块大小:691 × 336
*
* 另:application icon 的大小是 100 × 100
*
* 关于 Tile 的更多内容参见:
* http://www.cnblogs.com/webabcd/archive/2012/06/27/2564975.html
* http://www.cnblogs.com/webabcd/archive/2012/07/05/2577190.html
*/ using System;
using System.Windows;
using Microsoft.Phone.Controls;
using Microsoft.Phone.Shell; namespace Demo.Tile
{
public partial class CycleTile : PhoneApplicationPage
{
public CycleTile()
{
InitializeComponent();
} private void btnPin_Click(object sender, RoutedEventArgs e)
{
CycleTileData cycleTile = new CycleTileData()
{
Title = "title",
Count = ,
SmallBackgroundImage = new Uri("/Assets/AppTile.png", UriKind.Relative),
CycleImages = new Uri[]
{
new Uri("/Assets/AppTile.png", UriKind.Relative),
new Uri("/Assets/AppTile.png", UriKind.Relative),
new Uri("/Assets/AppTile.png", UriKind.Relative),
new Uri("/Assets/AppTile.png", UriKind.Relative),
new Uri("/Assets/AppTile.png", UriKind.Relative),
new Uri("/Assets/AppTile.png", UriKind.Relative),
new Uri("/Assets/AppTile.png", UriKind.Relative)
}
}; // 最后一个参数为是否支持宽图块
ShellTile.Create(new Uri("/MainPage.xaml", UriKind.Relative), cycleTile, true);
}
}
} /*
通过 xml 方式构造 cycle tile 数据
<?xml version="1.0" encoding="utf-8"?>
<wp:Notification xmlns:wp="WPNotification" Version="2.0">
<wp:Tile Id="[Tile ID]" Template="CycleTile">
<wp:SmallBackgroundImage [Action="Clear"]>[small Tile size URI]</wp:SmallBackgroundImage>
<wp:CycleImage1 Action="Clear">[photo 1 URI]</wp:CycleImage1>
<wp:CycleImage2 Action="Clear">[photo 2 URI]</wp:CycleImage2>
<wp:CycleImage3 Action="Clear">[photo 3 URI]</wp:CycleImage3>
<wp:CycleImage4 Action="Clear">[photo 4 URI]</wp:CycleImage4>
<wp:CycleImage5 Action="Clear">[photo 5 URI]</wp:CycleImage5>
<wp:CycleImage6 Action="Clear">[photo 6 URI]</wp:CycleImage6>
<wp:CycleImage7 Action="Clear">[photo 7 URI]</wp:CycleImage7>
<wp:CycleImage8 Action="Clear">[photo 8 URI]</wp:CycleImage8>
<wp:CycleImage9 Action="Clear">[photo 9 URI]</wp:CycleImage9>
<wp:Count Action="Clear">[count]</wp:Count>
<wp:Title Action="Clear">[title]</wp:Title>
</wp:Tile>
</wp:Notification>
*/
3、演示 IconicTile 的应用
Tile/IconicTile.xaml
<phone:PhoneApplicationPage
x:Class="Demo.Tile.IconicTile"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
FontFamily="{StaticResource PhoneFontFamilyNormal}"
FontSize="{StaticResource PhoneFontSizeNormal}"
Foreground="{StaticResource PhoneForegroundBrush}"
SupportedOrientations="Portrait" Orientation="Portrait"
mc:Ignorable="d"
shell:SystemTray.IsVisible="True"> <Grid x:Name="LayoutRoot" Background="Transparent">
<ScrollViewer>
<StackPanel>
<Button Name="btnPin" Content="pin the iconic tile" Margin="0 0 0 10" Click="btnPin_Click" />
<Image Source="/Tile/IconicTile1.png" />
<Image Source="/Tile/IconicTile2.png" />
<Image Source="/Tile/IconicTile3.png" />
</StackPanel>
</ScrollViewer>
</Grid> </phone:PhoneApplicationPage>
Tile/IconicTile.xaml.cs
/*
* IconicTileData - 图标瓷贴
* Title - 标题
* Count - badge (徽章),范围 1 - 99
* SmallIconImage - 小图块和大图块的图标部分
* IconImage - 中图块的图标部分
* WideContent1 - 宽图块的第一行的文本
* WideContent2 - 宽图块的第二行的文本
* WideContent3 - 宽图块的第三行的文本
* BackgroundColor - 图块的背景颜色,默认为主题色
* 注:如果需要指定背景色,其 alpha 必须是 255,否则无效
*
* 注:对于图标来说只有白色和透明的概念,也就是说图标中的所有非透明的颜色都会被转换为白色
*
* 小图块和大图块的图标部分的大小:110 × 110
* 中图块的图标部分的大小:202 × 202
*
* 另:application icon 的大小是 100 × 100
*
* 关于 Tile 的更多内容参见:
* http://www.cnblogs.com/webabcd/archive/2012/06/27/2564975.html
* http://www.cnblogs.com/webabcd/archive/2012/07/05/2577190.html
*/ using System;
using System.Windows;
using Microsoft.Phone.Controls;
using Microsoft.Phone.Shell;
using System.Windows.Media; namespace Demo.Tile
{
public partial class IconicTile : PhoneApplicationPage
{
public IconicTile()
{
InitializeComponent();
} private void btnPin_Click(object sender, RoutedEventArgs e)
{
IconicTileData iconicTile = new IconicTileData()
{
Title = "title",
Count = ,
WideContent1 = "wideContent1",
WideContent2 = "wideContent2",
WideContent3 = "wideContent3",
SmallIconImage = new Uri("/Assets/AppTile.png", UriKind.Relative),
IconImage = new Uri("/Assets/AppTile.png", UriKind.Relative),
BackgroundColor = new Color { A = , R = , G = , B = } // alpha 必须是 255,否则无效
}; // 最后一个参数为是否支持宽图块
ShellTile.Create(new Uri("/MainPage.xaml", UriKind.Relative), iconicTile, true);
}
}
} /*
通过 xml 方式构造 iconic tile 数据
<?xml version="1.0" encoding="utf-8"?>
<wp:Notification xmlns:wp="WPNotification" Version="2.0">
<wp:Tile Id="[Tile ID]" Template="IconicTile">
<wp:SmallIconImage [Action="Clear"]>[small Tile size URI]</wp:SmallIconImage>
<wp:IconImage Action="Clear">[medium/wide Tile size URI]</wp:IconImage>
<wp:WideContent1 Action="Clear">[1st row of content]</wp:WideContent1>
<wp:WideContent2 Action="Clear">[2nd row of content]</wp:WideContent2>
<wp:WideContent3 Action="Clear">[3rd row of content]</wp:WideContent3>
<wp:Count Action="Clear">[count]</wp:Count>
<wp:Title Action="Clear">[title]</wp:Title>
<wp:BackgroundColor Action="Clear">[hex ARGB format color]</wp:BackgroundColor>
</wp:Tile>
</wp:Notification>
*/
OK
[源码下载]
与众不同 windows phone (36) - 8.0 新的瓷贴: FlipTile, CycleTile, IconicTile的更多相关文章
- 与众不同 windows phone (34) - 8.0 新的控件: LongListSelector
[源码下载] 与众不同 windows phone (34) - 8.0 新的控件: LongListSelector 作者:webabcd 介绍与众不同 windows phone 8.0 之 新的 ...
- 与众不同 windows phone (35) - 8.0 新的启动器: ShareMediaTask, SaveAppointmentTask, MapsTask, MapsDirectionsTask, MapDownloaderTask
[源码下载] 与众不同 windows phone (35) - 8.0 新的启动器: ShareMediaTask, SaveAppointmentTask, MapsTask, MapsDirec ...
- 与众不同 windows phone (43) - 8.0 相机和照片: 镜头的可扩展性, 图片的可扩展性, 图片的自动上传扩展
[源码下载] 与众不同 windows phone (43) - 8.0 相机和照片: 镜头的可扩展性, 图片的可扩展性, 图片的自动上传扩展 作者:webabcd 介绍与众不同 windows ph ...
- 与众不同 windows phone (44) - 8.0 位置和地图
[源码下载] 与众不同 windows phone (44) - 8.0 位置和地图 作者:webabcd 介绍与众不同 windows phone 8.0 之 位置和地图 位置(GPS) - Loc ...
- 与众不同 windows phone (47) - 8.0 其它: 锁屏信息和锁屏背景, 电池状态, 多分辨率, 商店, 内置协议, 快速恢复
[源码下载] 与众不同 windows phone (47) - 8.0 其它: 锁屏信息和锁屏背景, 电池状态, 多分辨率, 商店, 内置协议, 快速恢复 作者:webabcd 介绍与众不同 win ...
- 与众不同 windows phone (37) - 8.0 文件系统: StorageFolder, StorageFile, 通过 Uri 引用文件, 获取 SD 卡中的文件
[源码下载] 与众不同 windows phone (37) - 8.0 文件系统: StorageFolder, StorageFile, 通过 Uri 引用文件, 获取 SD 卡中的文件 作者:w ...
- 与众不同 windows phone (38) - 8.0 关联启动: 使用外部程序打开一个文件或URI, 关联指定的文件类型或协议
[源码下载] 与众不同 windows phone (38) - 8.0 关联启动: 使用外部程序打开一个文件或URI, 关联指定的文件类型或协议 作者:webabcd 介绍与众不同 windows ...
- 与众不同 windows phone (39) - 8.0 联系人和日历
[源码下载] 与众不同 windows phone (39) - 8.0 联系人和日历 作者:webabcd 介绍与众不同 windows phone 8.0 之 联系人和日历 自定义联系人存储的增删 ...
- 与众不同 windows phone (40) - 8.0 媒体: 音乐中心的新增功能, 图片中心的新增功能, 后台音乐播放的新增功能
[源码下载] 与众不同 windows phone (40) - 8.0 媒体: 音乐中心的新增功能, 图片中心的新增功能, 后台音乐播放的新增功能 作者:webabcd 介绍与众不同 windows ...
随机推荐
- JVM -Xss调整Stack Space的大小 【转】
Java程序中,每个线程都有自己的Stack Space.这个Stack Space不是来自Heap的分配.所以Stack Space的大小不会受到-Xmx和-Xms的影响,这2个JVM参数仅仅是影响 ...
- Wtl之奇技淫巧篇:一、SDI如何居中显示视图
Wtl的sdi应用,视图默认铺满框架的客户区.视图通常用modeless对话框,所有的界面元素都拥挤在左上角,这明显很丑陋.我们尝试让视图居中显示,保持原始大小,这是个很典型的问题,看似简单,诸多细节 ...
- 【工作代码】复杂 JSON 值替换处理
总结下最近的工作遇到的点:入参复杂 JSON 层层嵌套,Java 怎么优雅的处理. 一.关于 JSON JSON 是类似 XML 用于存储和交互文本信息.但优于 XML ,其更小,更快,更易懂和解析. ...
- 正则表达式工具RegexBuddy使用教程(原创自Zjmainstay)
从<我眼里的正则表达式(入门)>这个文章,到<深入正则表达式应用>,再到后来专门创建的正则QQ群"专精正则表达式",到现在已经过去2年时间了.在文章和群里一 ...
- Python初学者需要注意的问题
一.注意你的Python版本 Python官方网站为http://www.python.org/,当前最新版本为3.4.0 alpha,稳定版本为3.3.2,在3.0版本时,Python的语法改动较大 ...
- 电商O2O-11种最佳运营模式
免费模式,是在这种矛盾下应运而生的新型模式.免费模式在未来的几年中,将会不断的渗透到各个行业中,这不单单是加速了行业内部的洗牌速度,更是加速了行业之间的洗牌速度. 未来,免费模式会让行业之间的界限变得 ...
- seajs集成jquery的一个坑
var $ = require("jquery"); 今天在用seajs集成js的时候,老是发现$获取不到,但是文件又加载进去了,后来找了半天发现是这个问题. 本质的原因在于sea ...
- php 将一个二维数组转换成有父子关系的数组
<?php /** * Tree 树型类(无限分类) * * @author Kvoid * @copyright http://kvoid.com * @version 1.0 * @acce ...
- smartjs - DataManager 场景示例分析 - 数据懒加载
发一张policy的参数图设置图: 场景1 - 数据的懒加载/延迟加载 在很多时候,为了提高网页的加载速度,减少不必要的开销,会将页面的数据拆分成几个部分,首先加载呈现可视区域内的数据,然后剩下来的会 ...
- Java知多少(112)数据库之删除记录
删除数据表也有3种方案 一.使用Statement对象 删除数据表记录的SQL语句的语法是: delete from 表名 where 特定条件 例如 : delete from ksInfo whe ...