Vývoj pro Band (3) - správa dlaždic aplikace
V MS Bandu můžete vytvářet nové dlaždice, počet vytvořených dlaždic vaší aplikací je limitován počtem aktuálně volných slotů v náramku (i to lze zjistit v aplikaci).Takto vytvořené dlaždice lze spravovat, mazat a dále s nimi v rámci aplikace pracovat.
Výpis volných slotů v náramku
try
{
IBandInfo[] pairedBands = await BandClientManager.Instance.GetBandsAsync();
if (pairedBands.Length < 1)
{ //CHYBA
return;
}
using (IBandClient bandClient = await BandClientManager.Instance.ConnectAsync(pairedBands[0]))
{
// počet volných slotů
int tileCapacity = await bandClient.TileManager.GetRemainingTileCapacityAsync();
output.Text = "Dostupná kapacita dlaždic: " + tileCapacity.ToString();
}
}
catch (BandException ex)
{
// handle a Band connection exception
}
Vložení nové dlaždice
try
{
IBandInfo[] pairedBands = await BandClientManager.Instance.GetBandsAsync();
if (pairedBands.Length < 1)
{
output.Text = "Nespárován žádný MS Band!";
return;
}
using (IBandClient bandClient = await BandClientManager.Instance.ConnectAsync(pairedBands[0]))
{
int tileCapacity = await bandClient.TileManager.GetRemainingTileCapacityAsync();
if (tileCapacity<1)
{
output.Text = "Nedostatečná kapacita volných slotů v náramku!";
return;
}
//přidání dlaždice do Bandu
if (await bandClient.TileManager.AddTileAsync(CreateTile(nazev)))
{
output.Text = "Přidána dlaždice: " + nazev;
}
}
}
catch (BandException ex)
{
output.Text = "zachycena výjimka: " + ex.Message;
}
public BandTile CreateTile(String nazev)
{
// vytvoření small tile ikony (24x24px)
WriteableBitmap smallIconBitmap = new WriteableBitmap(24, 24);
BandIcon smallIcon = smallIconBitmap.ToBandIcon();
// vytvoření ikony (Band1: 46x46px, Band2: 48x48px)
WriteableBitmap tileIconBitmap = new WriteableBitmap(46, 46);
BandIcon tileIcon = tileIconBitmap.ToBandIcon();
Guid tileGuid = Guid.NewGuid(); //identifikátor
BandTile tile = new BandTile(tileGuid)
{
IsBadgingEnabled = true, // povolit badging (počet nepřečtených zpráv)
Name = nazev,
SmallIcon = smallIcon,
TileIcon = tileIcon
};
return tile;
}
Výpis dlaždic aplikace
try
{
IBandInfo[] pairedBands = await BandClientManager.Instance.GetBandsAsync();
if (pairedBands.Length < 1)
{
output.Text = "Nespárován žádný MS Band!";
return;
}
using (IBandClient bandClient = await BandClientManager.Instance.ConnectAsync(pairedBands[0]))
{
IEnumerable<BandTile> tiles = await bandClient.TileManager.GetTilesAsync();
output.Text = "Dlaždice:";
foreach (var item in tiles)
{
output.Text += "\n" + item.Name;
}
}
}
catch (BandException ex)
{
output.Text = "zachycena výjimka: " + ex.Message;
}
0 komentářů: