【问题标题】:Tiles not showing up properly in WP8.1 Silverlight app瓷砖在 WP8.1 Silverlight 应用程序中未正确显示
【发布时间】:2014-09-14 11:29:54
【问题描述】:

我最近将我的 Windows Phone 8.0 应用程序转换为 Windows Phone 8.1 Silverlight(非通用)。之后我将通知服务更改为 WNS,因为我想利用它的好处。更改此设置后,我必须在新的 Package.appxmanifest 文件中指定我的磁贴徽标。

<m3:VisualElements DisplayName="Time Stamp Pro" 
    Square150x150Logo="Assets\Tiles\Logo.png"
    Square44x44Logo="Assets\Tiles\SmallLogo.png" 
    Description="Work time tracker" 
    ForegroundText="light" 
    BackgroundColor="transparent">
<m3:DefaultTile Square71x71Logo="Assets\Tiles\Square71x71Logo.png" 
    Wide310x150Logo="Assets\Tiles\WideLogo.png">
</m3:DefaultTile>
<m3:SplashScreen Image="Assets\Splashscreen\SplashScreenImage.jpg" />
</m3:VisualElements>

我的文件结构如下。

但是当我现在启动应用程序时,这些徽标/图块并没有显示出来。换句话说,它们无法加载。

所有的标志都是白色的,背景是透明的。它们看起来像这样(屏幕截图来自paint.net,所以背景中的方块就是来自这个绘图工具)

我无法弄清楚我在这里做错了什么。到目前为止,所有文档都没有帮助我。

【问题讨论】:

  • 您确定图片名称正确且操作设置为资源?
  • 刚刚仔细检查。将操作设置为资源也不起作用。我确定名字是正确的。根据文档和 Build2014 视频,框架将检查 .scale-xxx 作为名称的一部分以显示正确的图像,具体取决于设备屏幕(因此它总是看起来很完美)。但是,如果我对这个约定有误,请纠正我。

标签: c# silverlight windows-phone-8.1 live-tile appxmanifest


【解决方案1】:

在与 Microsoft 的相关人员联系后,我知道它为什么不起作用。 WP8.1 Silverlight 不支持缩放资源(文件名中包含 scale-xxx 的图像)。它们需要一个仅在 Windows 通用应用程序中可用的新资源概念。所以我必须坚持我在 WP8.0 中使用的旧图像,并在没有 scale-xxx 的情况下引用它们。

【讨论】:

  • 你能分享一下你这样做时的代码吗?
【解决方案2】:

尝试像这样在 DefaulTile 中添加 Square310x310Logo

<m3:DefaultTile  
Square71x71Logo="Assets\SquareTile71x71.png" 
Wide310x150Logo="Assets\Tiles\SquareTile310x150.png"
Square310x310Logo="Assets\Tiles\SquareTile310x310.png">
</m3:DefaultTile>

【讨论】:

  • 这也无济于事。 Square310x310Logo 无论如何都会被 WP 忽略。请注意,该应用程序是 Silverlight 的 WP 8.1! (不通用)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-02-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多