none
如何设置辅助磁贴(字体大小,颜色,位置) RRS feed

  • 问题

  • 我设置的辅助磁贴默认位置在辅助磁贴的左下角,而且字体好小啊。颜色只有Light白色和dark黑色吗?辅助磁贴上显示的文字位置能调整吗?还有字体大小。
    2013年8月2日 14:04

答案

  • 我刚刚测试了下,其实是可以实现的,显示用的是TileNotification中预定义的模板。

    效果图如下:

    具体实现的方法:

    1,下载MSDN上的一个叫Secondary Tile的Sample,地址为:http://code.msdn.microsoft.com/windowsapps/Secondary-Tiles-Sample-edf2a178

    2,编辑SecondaryTileNotification.xaml这个页面中SendTileNotificationWithStringManipulation_Click事件,也就是给Tile发送Notification的事件,把其中的代码注释掉原有的tileXmlString,新写一个:

     Button button = sender as Button;
                if (button != null)
                {
                    //string tileXmlString = "<tile>"
                    //                     + "<visual>"
                    //                     + "<binding template='TileWideText04'>"
                    //                     + "<text id='1'>Send to a secondary tile from strings</text>"
                    //                     + "</binding>"
                    //                     + "<binding template='TileSquareText04'>"
                    //                     + "<text id='1'>Send to a secondary tile from strings</text>"
                    //                     + "</binding>"
                    //                     + "</visual>"
                    //                     + "</tile>";
    
                    string tileXmlString = "<tile>"
                                         + "<visual>"
                                         + "<binding template='TileWideText01' branding='None'>"
                                         + "<text id='1'>Send to a secondary tile from strings</text>"
                                         + "<text id='2'>2</text>"
                                         + "<text id='3'>3</text>"
                                         + "<text id='4'>4</text>"
                                         + "</binding>"
                        
                                         + "</visual>"
                                         + "</tile>";

    编译之后运行程序,点击 6)Secondary Tile Notification中的Send Tile Notification按钮就可以出现类似截图的效果。

    以上请参考。


    James He
    MSDN Community Support | Feedback to us
    Develop and promote your apps in Windows Store
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.


    2013年8月6日 2:02
    版主

全部回复

  • Hi coolala,

    目前为止,Foreground Text的颜色只有Dark和Light两种,可以参考 enumeration 文档。同样在8.0版本中文字位置的话是不可以调整的,字体大小也不可以,这些都是微软为了解面统一而固定的设置。

    下面是8.0版本中用到的构造类型,并没有可以修改显示样式的地方,请知悉。

    public SecondaryTile(
      string tileId, 
      string shortName, 
      string displayName, 
      string arguments, 
      TileOptions tileOptions, 
      Uri logoReference
    )


    James He
    MSDN Community Support | Feedback to us
    Develop and promote your apps in Windows Store
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2013年8月3日 2:40
    版主
  • Hi Jamles Hez,

    我做出来的辅助磁贴,文字显示在磁贴的左下角。可是,我有在其他的应用里看到,辅助磁贴上显示的文字在左上角,而且字体比我自己做的字体要大。所以,我在想或许有办法改变文字大小和文字位置的。可是看了你的回复,这似乎又不可能实现。- -

    无论如何,感谢你的回复!

    2013年8月4日 1:53
  • Hi coolala,

    您能给出几个类似的截图么?其实我也挺好奇的能否达成这个效果。

    我刚刚看了下Tile的话是可以有很多模版可供使用,比如说这个:

    但是SecondaryTile我没能找到可以变换的样式。


    James He
    MSDN Community Support | Feedback to us
    Develop and promote your apps in Windows Store
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2013年8月5日 5:23
    版主
  • Hi Jamles Hez,

    我好像没有发图片和链接的权限。- - 你可以去下载一个叫“便利条”的win8应用看看效果。这个应用生成的辅助磁贴,文字显示在了左上角,而且磁贴上的字体好像更大些。

    2013年8月5日 11:28
  • 你指的是这个么?http://apps.microsoft.com/windows/zh-cn/app/9d2ae91f-fb6e-4fb8-a190-6457f41e3778

    James He
    MSDN Community Support | Feedback to us
    Develop and promote your apps in Windows Store
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2013年8月5日 14:11
    版主
  • 是的,就是这个应用。
    2013年8月6日 1:24
  • 我刚刚测试了下,其实是可以实现的,显示用的是TileNotification中预定义的模板。

    效果图如下:

    具体实现的方法:

    1,下载MSDN上的一个叫Secondary Tile的Sample,地址为:http://code.msdn.microsoft.com/windowsapps/Secondary-Tiles-Sample-edf2a178

    2,编辑SecondaryTileNotification.xaml这个页面中SendTileNotificationWithStringManipulation_Click事件,也就是给Tile发送Notification的事件,把其中的代码注释掉原有的tileXmlString,新写一个:

     Button button = sender as Button;
                if (button != null)
                {
                    //string tileXmlString = "<tile>"
                    //                     + "<visual>"
                    //                     + "<binding template='TileWideText04'>"
                    //                     + "<text id='1'>Send to a secondary tile from strings</text>"
                    //                     + "</binding>"
                    //                     + "<binding template='TileSquareText04'>"
                    //                     + "<text id='1'>Send to a secondary tile from strings</text>"
                    //                     + "</binding>"
                    //                     + "</visual>"
                    //                     + "</tile>";
    
                    string tileXmlString = "<tile>"
                                         + "<visual>"
                                         + "<binding template='TileWideText01' branding='None'>"
                                         + "<text id='1'>Send to a secondary tile from strings</text>"
                                         + "<text id='2'>2</text>"
                                         + "<text id='3'>3</text>"
                                         + "<text id='4'>4</text>"
                                         + "</binding>"
                        
                                         + "</visual>"
                                         + "</tile>";

    编译之后运行程序,点击 6)Secondary Tile Notification中的Send Tile Notification按钮就可以出现类似截图的效果。

    以上请参考。


    James He
    MSDN Community Support | Feedback to us
    Develop and promote your apps in Windows Store
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.


    2013年8月6日 2:02
    版主
  • 关于如何去生成一个模板,你可以去参考这个例子 http://code.msdn.microsoft.com/windowsapps/App-tiles-and-badges-sample-5fc49148 运行之后选择Scenario 5:Preview All Tile Notification Template里面可以预览到各种预设的模板,并且填上相应的文字和图片之后可以生成上面所使用的XML字符串。

    James He
    MSDN Community Support | Feedback to us
    Develop and promote your apps in Windows Store
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2013年8月6日 2:06
    版主
  • Hi Jamles Hez,

    问题差不多解决了,谢谢你的回复。 

    :D

    2013年8月8日 1:19
  • Hi Coolala,

    如果我的回答帮你解决了问题,请Mark他们。如果还是有疑问的话我也可以继续跟进。

    多谢对论坛的支持 :P


    James He
    MSDN Community Support | Feedback to us
    Develop and promote your apps in Windows Store
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2013年8月8日 1:43
    版主