UI/UX fine tuning

This commit is contained in:
DismissedLight
2023-09-20 23:50:24 +08:00
parent 5a99488582
commit 2a757dce51
7 changed files with 206 additions and 196 deletions

View File

@@ -20,10 +20,12 @@
<ResourceDictionary x:Key="Light">
<Color x:Key="AvatarPropertyAddValueColor">#FF74BF00</Color>
<Color x:Key="CompatBackgroundColor">#FFF4F4F4</Color>
<SolidColorBrush x:Key="DarkOnlyOverlayMaskBrush" Color="#00000000"/>
</ResourceDictionary>
<ResourceDictionary x:Key="Dark">
<Color x:Key="AvatarPropertyAddValueColor">#FF90E800</Color>
<Color x:Key="CompatBackgroundColor">#FF242424</Color>
<SolidColorBrush x:Key="DarkOnlyOverlayMaskBrush" Color="#60000000"/>
</ResourceDictionary>
</ResourceDictionary.ThemeDictionaries>
<!-- Modify Window title bar color -->

View File

@@ -20,15 +20,25 @@
<mxi:Interaction.Behaviors>
<shcb:InvokeCommandOnLoadedBehavior Command="{Binding OpenUICommand}"/>
</mxi:Interaction.Behaviors>
<Grid>
<Grid Visibility="{Binding IsInitialized, Converter={StaticResource BoolToVisibilityConverter}}">
<Grid Visibility="{Binding StatisticsList.Count, Converter={StaticResource Int32ToVisibilityConverter}}">
<FlipView
x:Name="RootFlipView"
Background="{x:Null}"
ItemsSource="{Binding StatisticsList}">
<FlipView.ItemTemplate>
<DataTemplate>
<Button.Resources>
<DataTemplate x:Key="AchievementTempate" x:DataType="shva:AchievementView">
<StackPanel Margin="0,4,0,0">
<TextBlock
Opacity="0.8"
Style="{StaticResource SubtitleTextBlockStyle}"
Text="{Binding Inner.Title}"
TextTrimming="CharacterEllipsis"
TextWrapping="NoWrap"/>
<TextBlock
Opacity="0.6"
Style="{StaticResource CaptionTextBlockStyle}"
Text="{Binding Time}"
TextWrapping="NoWrap"/>
</StackPanel>
</DataTemplate>
<DataTemplate x:Key="AchievementArchiveTempate" x:DataType="shva:AchievementStatistics">
<Grid Margin="12">
<Grid.RowDefinitions>
<RowDefinition Height="auto"/>
@@ -45,29 +55,22 @@
Margin="0,4,0,0"
Style="{StaticResource TitleTextBlockStyle}"
Text="{Binding FinishDescription}"/>
<ItemsControl Grid.Row="2" ItemsSource="{Binding Achievements}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<StackPanel Margin="0,4,0,0">
<TextBlock
Opacity="0.8"
Style="{StaticResource SubtitleTextBlockStyle}"
Text="{Binding Inner.Title}"
TextTrimming="CharacterEllipsis"
TextWrapping="NoWrap"/>
<TextBlock
Opacity="0.6"
Style="{StaticResource CaptionTextBlockStyle}"
Text="{Binding Time}"
TextWrapping="NoWrap"/>
</StackPanel>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
<ItemsControl
Grid.Row="2"
ItemTemplate="{StaticResource AchievementTempate}"
ItemsSource="{Binding Achievements}"/>
</Grid>
</DataTemplate>
</FlipView.ItemTemplate>
</FlipView>
</Button.Resources>
<Grid>
<Grid Visibility="{Binding IsInitialized, Converter={StaticResource BoolToVisibilityConverter}}">
<Grid Visibility="{Binding StatisticsList.Count, Converter={StaticResource Int32ToVisibilityConverter}}">
<FlipView
x:Name="RootFlipView"
Background="{x:Null}"
ItemTemplate="{StaticResource AchievementArchiveTempate}"
ItemsSource="{Binding StatisticsList}"/>
<PipsPager
Height="16"

View File

@@ -5,6 +5,10 @@ using Microsoft.UI.Xaml.Controls;
namespace Snap.Hutao.View.Card;
/// <summary>
/// 保存对卡片的引用
/// ItemsRepeater 无法直接使用带有 DataContext 属性的类为直接的源
/// </summary>
internal sealed class CardReference
{
public Button? Card { get; set; }

View File

@@ -9,6 +9,7 @@
xmlns:shch="using:Snap.Hutao.Control.Helper"
xmlns:shci="using:Snap.Hutao.Control.Image"
xmlns:shcm="using:Snap.Hutao.Control.Markup"
xmlns:shme="using:Snap.Hutao.Model.Entity"
xmlns:shvc="using:Snap.Hutao.View.Control"
xmlns:shvd="using:Snap.Hutao.ViewModel.DailyNote"
Padding="0"
@@ -23,15 +24,9 @@
<mxi:Interaction.Behaviors>
<shcb:InvokeCommandOnLoadedBehavior Command="{Binding OpenUICommand}"/>
</mxi:Interaction.Behaviors>
<Grid>
<Grid Visibility="{Binding IsInitialized, Converter={StaticResource BoolToVisibilityConverter}}">
<Grid Visibility="{Binding DailyNoteEntries.Count, Converter={StaticResource Int32ToVisibilityConverter}}">
<FlipView
x:Name="RootFlipView"
Background="{x:Null}"
ItemsSource="{Binding DailyNoteEntries}">
<FlipView.ItemTemplate>
<DataTemplate>
<Button.Resources>
<DataTemplate x:Key="DailyNoteTemplate" x:DataType="shme:DailyNoteEntry">
<Grid
Margin="12"
ColumnSpacing="6"
@@ -170,8 +165,16 @@
</Grid>
</Grid>
</DataTemplate>
</FlipView.ItemTemplate>
</FlipView>
</Button.Resources>
<Grid>
<Grid Visibility="{Binding IsInitialized, Converter={StaticResource BoolToVisibilityConverter}}">
<Grid Visibility="{Binding DailyNoteEntries.Count, Converter={StaticResource Int32ToVisibilityConverter}}">
<FlipView
x:Name="RootFlipView"
Background="{x:Null}"
ItemTemplate="{StaticResource DailyNoteTemplate}"
ItemsSource="{Binding DailyNoteEntries}"/>
<PipsPager
Height="16"

View File

@@ -12,7 +12,7 @@
VerticalContentAlignment="Stretch"
mc:Ignorable="d">
<Grid>
<clw:Shimmer IsActive="{x:Bind IsLoading, Mode=OneWay}"/>
<clw:Shimmer CornerRadius="0" IsActive="{x:Bind IsLoading, Mode=OneWay}"/>
<StackPanel HorizontalAlignment="Center" VerticalAlignment="Center">
<shci:CachedImage
Width="120"

View File

@@ -10,5 +10,8 @@
HorizontalContentAlignment="Stretch"
VerticalContentAlignment="Stretch"
mc:Ignorable="d">
<clw:Shimmer IsActive="{x:Bind IsLoading}" Duration="0:0:1"/>
<clw:Shimmer
CornerRadius="0"
IsActive="{x:Bind IsLoading}"
Duration="0:0:1"/>
</shc:Loading>

View File

@@ -136,22 +136,17 @@
<mxi:Interaction.Behaviors>
<shcb:AutoHeightBehavior TargetHeight="1024" TargetWidth="2048"/>
</mxi:Interaction.Behaviors>
<Border Grid.ColumnSpan="2" Background="{ThemeResource DarkOnlyOverlayMaskBrush}"/>
<ScrollViewer
Grid.Column="0"
Margin="16"
VerticalScrollBarVisibility="Hidden">
<StackPanel>
<shvc:BottomTextControl
MaxWidth="80"
RequestedTheme="Light"
Text="{shcm:ResourceString Name=ViewPageWiKiWeaponBeforeAscensionTitle}">
<shvc:BottomTextControl MaxWidth="80" Text="{shcm:ResourceString Name=ViewPageWiKiWeaponBeforeAscensionTitle}">
<shvc:ItemIcon Icon="{Binding Selected.Icon, Converter={StaticResource EquipIconConverter}}" Quality="{Binding Selected.RankLevel}"/>
</shvc:BottomTextControl>
<shvc:BottomTextControl
Margin="0,16,0,0"
RequestedTheme="Light"
Text="{shcm:ResourceString Name=ViewPageWiKiWeaponAfterAscensionTitle}">
<shvc:BottomTextControl Margin="0,16,0,0" Text="{shcm:ResourceString Name=ViewPageWiKiWeaponAfterAscensionTitle}">
<shvc:ItemIcon Icon="{Binding Selected.AwakenIcon, Converter={StaticResource EquipIconConverter}}" Quality="{Binding Selected.RankLevel}"/>
</shvc:BottomTextControl>
</StackPanel>