2013-04-06 1 views
1

내 앱의 App.xaml.cs 페이지에는 다음과 같은 방법이 있습니다.이미지 설정 오류로 인해 라이브 타일이 작동하지 않습니까?

public static void SendLiveTileUpdate(Record rr) 
{ 
    string imageUristring = "ms-appdata:///local/" + rr.Id.ToString() + ".jpg"; 

    XmlDocument wideTileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWideImageAndText01); 

    XmlNodeList wideTileTextAttrib = wideTileXml.GetElementsByTagName("text"); 
    wideTileTextAttrib[0].InnerText = rr.Name; 

    XmlNodeList wideTileImageAttrib = wideTileXml.GetElementsByTagName("image"); 

    //((XmlElement)wideTileImageAttrib[0]).SetAttribute("src", "ms-appdata:///local/" + rr.Id.ToString() + ".jpg"); 
    ((XmlElement)wideTileImageAttrib[0]).SetAttribute("src", imageUristring); 
    ((XmlElement)wideTileImageAttrib[0]).SetAttribute("alt", "Image"); 

    //Wide tile Layout done 

    XmlDocument sqTileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquareImage); 

    XmlNodeList sqTileImageAttrib = sqTileXml.GetElementsByTagName("image"); 
    ((XmlElement)sqTileImageAttrib[0]).SetAttribute("src", imageUristring); 
    ((XmlElement)sqTileImageAttrib[0]).SetAttribute("alt", "Image"); 

    IXmlNode node = wideTileXml.ImportNode(sqTileXml.GetElementsByTagName("binding").Item(0), true); 
    wideTileXml.GetElementsByTagName("visual").Item(0).AppendChild(node); 

    //Square tile set and added to wide tile xml 

    TileNotification tileNot = new TileNotification(wideTileXml); 

    tileNot.ExpirationTime = DateTime.Now.AddDays(5); 

    updater.Update(tileNot); 
} 

페이지에 또한 (도시 된 바와 같이, 나중에 큐를 업데이트)를 호출 EnableNotificationQueue(true) 페이지 초기화에 이용되는 글로벌 변수 업데이터있다.

문제는이 코드를 실행해도 작동하지 않는다는 것입니다. 이미지 할당이 제외 된 경우 라이브 타일이 rr.Id.ToString() 값으로 업데이트되지만 타일은 업데이트되지 않기 때문에 이미지와 관련이 있다고 추론했습니다. imageUristring이 참조하는이 이미지는 앱 로컬 저장소에 있고 (이름은 method 매개 변수의 ID와 일치 함) 아직 작동하지 않습니다. 문제의 이미지는 200KB 미만이며 1920x1080입니다. (타일에 맞게 크기가 조정될 것 같습니까?)

내가 뭘 잘못하고 있니? 타일을 로컬 스토리지에 저장된 이미지로 업데이트하려면 어떻게해야합니까?

답변

2

이미지는 < = 1024x1024이어야합니다. http://msdn.microsoft.com/en-us/library/windows/apps/Hh781198.aspx에서 : 타일 이미지보다 작거나 1024 × 1024 화소와 동일한 크기를 가지고 있어야

, 이하 200KB가 파일 크기를 가지며, 형 .PNG 될, .JPG, .JPEG, 또는 .gif.

+0

아! 나는 문서화 (그리고 당신의 블로그 포스트!)를 거치면서 그것을 놓친 것 같다. 타일을 프로그래밍 방식으로 크기를 조정하는 방법이 있습니까? –

+1

업데이트 : 여기에서 크기를 조정할 수있는 완벽한 솔루션을 찾았습니다. http://amoore.katalyststudios.com/content/resizing-image-within-windows-8-app-c –

+0

지연에 대해 유감으로 생각합니다 ... 예, 코드 크기 조정과 같은 이미지 크기 조정 . 스트림을 읽고 크기를 조정하고 쓰십시오. 다행 이군. 다 준비 됐어. –

관련 문제