Bar codes are now supported in the SDK which was updated today (and a few more changes). The SDK is also out of preview woho!
new:
- Rich content tiles – barcodes and icons
- List item
- We can have buttons! (can’t believe I’m that excited about a button)
- We can listen for tile and button events
- Access to new data- calories
- Windows phone background support
- iOS remote or local notifications
Here is some barcode code from the new sample app uploaded.
using (IBandClient bandClient = await BandClientManager.Instance.ConnectAsync(pairedBands[0]))
{
var myCardTextBlock = new TextBlock()
{
Color = Colors.Blue.ToBandColor(),
ElementId = 1,
Rect = new PageRect(0, 0, 200, 25)
};
var barcode = new Barcode(BarcodeType.Code39)
{
ElementId = 2,
Rect = new PageRect(0, 0, 250, 50)
};
TextBlock digitsTextBlock = new TextBlock()
{
ElementId = 3,
Rect = new PageRect(0, 0, 200, 25)
};
FlowPanel panel = new FlowPanel(myCardTextBlock, barcode, digitsTextBlock)
{
Orientation = FlowPanelOrientation.Vertical,
Rect = new PageRect(0, 0, 250, 100)
};
Guid myTileId = new Guid("D781F673-6D05-4D69-BCFF-EA7E706C3418");
BandTile myTile = new BandTile(myTileId)
{
Name = "My Tile",
TileIcon = await LoadIcon("ms-appx:///Assets/SampleTileIconLarge.png"),
SmallIcon = await LoadIcon("ms-appx:///Assets/SampleTileIconSmall.png")
};
myTile.PageLayouts.Add(new PageLayout(panel));
await bandClient.TileManager.AddTileAsync(myTile);
PageData page = new PageData(
Guid.NewGuid(),
0,
new TextBlockData(myCardTextBlock.ElementId.Value, "MY CARD"),
new BarcodeData(barcode.BarcodeType, barcode.ElementId.Value, "123456789"),
new TextBlockData(digitsTextBlock.ElementId.Value, "123456789"));
await bandClient.TileManager.SetPagesAsync(myTile.TileId, page);
this.viewModel.StatusMessage = "Done. Check the Tile on your Band (it's the last Tile).";
}