[Windows ストアアプリ] Windows 8.1 対応

Mevy を Windows 8.1 対応したときにやったこと。

ターゲットの変更

Windows ストア アプリのターゲットを Windows 8.1 に変更する
バージョン管理を行っているので Windows 8 用にブランチを切って残しつつ
Visual Studio 2013\Project の方に落とし直す。
Visual Studio 2013 で開いて各プロジェクトのターゲットを変更。
外部プロジェクトと広告の参照を変更。

アプリの最小幅

Package.appxmanifest で最小幅を 320px に指定。

TryUnsnap 廃止

画像選択のためのファイルピッカーがスナップでは動かなかったので TryUnsnap でスナップを解除する処理を書いていましたが、スナップという概念が無くなり最小幅でもファイルピッカーが動くようになりました。
TryUnsnap をして成功したら、という条件を削除。

アプリバー

幅が可変になったので旧スナップ(320px)以外でもメニューを2段にする必要が。
8.1 で追加された AppBarButton も使いつつ書き直し。 IsCompact のおかげで1段でもたくさんボタン置けるように。
ちなみに IsCompact を true にすると 320px でボタンが5個まで置けます。
LayoutAwarePage によってアプリが動作しなくなる ので処理を追加。

protected override void OnNavigatedTo(Windows.UI.Xaml.Navigation.NavigationEventArgs e)
{
    base.OnNavigatedTo(e);
    this.Loaded += GroupedItemsPage_Loaded;
    this.Unloaded += GroupedItemsPage_Unloaded;
}
 
void GroupedItemsPage_Unloaded(object sender, RoutedEventArgs e)
{
    Window.Current.SizeChanged -= Current_SizeChanged;
}
 
void GroupedItemsPage_Loaded(object sender, RoutedEventArgs e)
{
    Window.Current.SizeChanged += Current_SizeChanged;
}
 
void Current_SizeChanged(object sender, Windows.UI.Core.WindowSizeChangedEventArgs e)
{
    if (e.Size.Width <= 500) { } else { }// 幅によってボタンの表示を切り替える
}

ListView のスクロール

これは対応したことではありませんが ListView にアイテムが追加されたときの挙動が Windows 8.1 で変わった ことによりスクロール中のツイートが読みやすくなりました。


カテゴリー: Windows ストア アプリ タグ: , , パーマリンク