/// <summary>
        /// アプリタイルを生成する
        /// </summary>
        /// <param name="id">ID</param>
        /// <param name="name">名称</param>
        /// <param name="icon">アイコンの画像ソース(46 x 46 px)</param>
        /// <param name="smallIcon">小さいアイコンの画像ソース(24 x 24 px)</param>
        /// <param name="theme">テーマカラー</param>
        /// <returns>アプリタイル</returns>
        public async Task <IBandTile> CreateTile(Guid id, string name, StreamImageSource icon, StreamImageSource smallIcon, BandTheme theme = null)
        {
            var nativeIcon = await NativeBandImageConvert.ToNativeIcon(icon);

            var nativeSmallIcon = await NativeBandImageConvert.ToNativeIcon(smallIcon);

            var tile = new NativeBandTile(id, name, nativeIcon, nativeSmallIcon);

            tile.Theme = theme;

            return(tile);
        }
        /// <summary>
        /// アイコンを設定する
        /// </summary>
        /// <param name="source">アイコン画像ソース(46 x 46 px)</param>
        /// <returns>成功した場合 <code>true</code>、それ以外は <code>false</code></returns>
        public async Task <bool> SetTileIconSource(StreamImageSource source)
        {
            this.tileIconSource = source;

            if (source == null)
            {
                return(false);
            }

            this.tile.TileIcon = await NativeBandImageConvert.ToNativeIcon(source);

            return(true);
        }
예제 #3
0
        /// <summary>
        /// 小さいアイコンを設定する
        /// </summary>
        /// <param name="source">小さいアイコン画像ソース(24 x 24 px)</param>
        /// <returns>成功した場合 <code>true</code>、それ以外は <code>false</code></returns>
        public async Task <bool> SetSmallIconSource(StreamImageSource source)
        {
            this.smallIconSource = source;

            Native.Tiles.BandIcon icon = null;
            if (source != null)
            {
                icon = await NativeBandImageConvert.ToNativeIcon(source);
            }
            this.Build(this.tile.TileId, this.tile.TileName, this.tile.TileIcon, icon, this.tile.Theme);

            return(true);
        }
예제 #4
0
        /// <summary>
        /// アイコンを設定する
        /// </summary>
        /// <param name="source">アイコン画像ソース(46 x 46 px)</param>
        /// <returns>成功した場合 <code>true</code>、それ以外は <code>false</code></returns>
        public async Task <bool> SetTileIconSource(StreamImageSource source)
        {
            this.tileIconSource = source;

            var error = new NSError();

            if (source == null)
            {
                return(this.tile.SetTileIcon(null, out error));
            }

            return(this.tile.SetTileIcon(await NativeBandImageConvert.ToNativeIcon(source), out error));
        }
예제 #5
0
        /// <summary>
        /// アイコンを設定する
        /// </summary>
        /// <param name="source">アイコン画像ソース(46 x 46 px)</param>
        /// <returns>成功した場合 <code>true</code>、それ以外は <code>false</code></returns>
        public async Task <bool> SetTileIconSource(StreamImageSource source)
        {
            this.tileIconSource = source;

            if (source == null)
            {
                return(false);
            }
            var icon = await NativeBandImageConvert.ToNativeIcon(source);

            this.Build(this.tile.TileId, this.tile.TileName, icon, this.tile.TileSmallIcon, this.tile.Theme);

            return(true);
        }