私はWindows Phone 7.1 Mangoアプリケーションを使用しています。ここでは、主にテーマカラーをオーバーライドしています。ただし、ユーザーが白いテーマを選択していて、ページに暗い背景と暗いアプリケーションバーがある場合、アプリケーションバーは白い背景でレンダリングされ、アニメーション化され、迷惑なフリッカーを引き起こします。アニメーションを終了した後、背景色が暗い色に適切に設定されます。WP7のホワイトテーマでApplicationBarがちらつくのを防ぐ方法はありますか?
アプリバーアニメーションを無効にする方法や、アニメーションの背景色を初期設定する方法はありますか?
このvideo capture of the flickering issue.
XAMLを参照してください:背後
<phone:PhoneApplicationPage x:Class="AppBarFlickers.Page1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
mc:Ignorable="d"
d:DesignWidth="480"
d:DesignHeight="728"
SupportedOrientations="Portrait"
Orientation="Portrait">
<Grid Background="Black">
<Button Content="Toggle App Bar"
Margin="100,185,100,0"
VerticalAlignment="Top"
Click="ButtonClick"
Foreground="White"
Background="Black"
BorderBrush="White" />
</Grid>
<phone:PhoneApplicationPage.ApplicationBar>
<shell:ApplicationBar BackgroundColor="Black"
ForegroundColor="White">
<shell:ApplicationBarIconButton IconUri="/icon.png"
Text="Button 1" />
</shell:ApplicationBar>
</phone:PhoneApplicationPage.ApplicationBar>
</phone:PhoneApplicationPage>
コード:ApplicationBarが隠れている間に、バックグラウンドがロードされていないよう
public partial class Page1
{
public Page1()
{
InitializeComponent();
}
private void ButtonClick(object sender, RoutedEventArgs e)
{
ApplicationBar.IsVisible = !ApplicationBar.IsVisible;
}
}
ダング、+25担当者なぜなら、そこに透明なアプリケーションバーがあるので、それが頑丈な背景を持っていないスクリーン上でそれをやっていない理由がわかります。ありがとう! – bkaid
あなたはこのようなことをどのように知っていますか:-) – Mahantesh
@KooKiz素晴らしい回避策。どうもありがとう。 –