【MAUI Blazor踩坑日记】6.mac标题栏颜色修改
MAUI中mac的标题栏颜色默认是灰白色的,有一点丑
如果我们想要自定义颜色,并且在运行时也能更改颜色,该怎么办呢
万幸从一个GitHub库中借鉴到了办法 https://github.com/BenBtg/MauiMacToolBar 这个库是自定义标题栏,如果你想自定义标题栏,而不仅仅是改变颜色,可以直接去看这个库。
第一步
Platforms/MacCatalyst文件夹下添加MacTitleBar.cs
#nullable disable
#pragma warning disable CA1416
public static class MacTitleBar
{
public static void SetTitleBarColorForMac(Color backgroundColor, Color foregroundColor)
{
var res = Application.Current.Resources;
res["PageBackgroundColor"] = backgroundColor;
res["PrimaryTextColor"] = foregroundColor;
}
public static void InitTitleBarForMac(object sender, EventArgs e)
{
#if MACCATALYST14_2_OR_GREATER
var window = sender as Window;
var uiWindow = window.Handler.PlatformView as UIKit.UIWindow;
if (uiWindow != null)
{
uiWindow.WindowScene.Titlebar.TitleVisibility = UIKit.UITitlebarTitleVisibility.Hidden;
}
#endif
}
}
第二步
修改App.xaml.cs
protected override Window CreateWindow(IActivationState? activationState)
{
Window window = base.CreateWindow(activationState);
#if MACCATALYST
window.Created += MacTitleBar.InitTitleBarForMac;
#endif
return window;
}
调用
#if MACCATALYST
var backgroundColor = Colors.White;
var foreColor = Colors.Black;
MacTitleBar.SetTitleBarColorForMac(backgroundColor, foreColor);
#endif
实际上,在这个uiWindow.WindowScene.Titlebar.TitleVisibility = UIKit.UITitlebarTitleVisibility.Hidden;
生效之后,mac的标题栏就会显示App.xaml中<Color x:Key="PageBackgroundColor">#fff</Color>
的颜色,所以我们更改PageBackgroundColor的颜色,就能改变标题栏颜色
【MAUI Blazor踩坑日记】6.mac标题栏颜色修改的更多相关文章
- Hexo搭建静态博客踩坑日记(一)
前言 博客折腾一次就好, 找一个适合自己的博客平台, 专注于内容进行提升. 方式一: 自己买服务器, 域名, 写前端, 后端(前后分离最折腾, 不分离还好一点)... 方式二: 利用Hexo, Hug ...
- AI相关 TensorFlow -卷积神经网络 踩坑日记之一
上次写完粗浅的BP算法 介绍 本来应该继续把 卷积神经网络算法写一下的 但是最近一直在踩 TensorFlow的坑.所以就先跳过算法介绍直接来应用场景,原谅我吧. TensorFlow 介绍 TF是g ...
- 人工智能(AI)库TensorFlow 踩坑日记之一
上次写完粗浅的BP算法 介绍 本来应该继续把 卷积神经网络算法写一下的 但是最近一直在踩 TensorFlow的坑.所以就先跳过算法介绍直接来应用场景,原谅我吧. TensorFlow 介绍 TF是g ...
- hexo博客谷歌百度收录踩坑日记
title: hexo博客谷歌百度收录踩坑日记 toc: false date: 2018-04-17 00:09:38 百度收录文件验证 无论怎么把渲染关掉或者render_skip都说我的格式错误 ...
- Hexo搭建静态博客踩坑日记(二)
前言 Hexo搭建静态博客踩坑日记(一), 我们说到利用Hexo快速搭建静态博客. 这节我们就来说一下主题的问题与主题的基本修改操作. 起步 chrome github hexo git node.j ...
- React Native Android配置部署踩坑日记
万事开头难 作为一只进入ECMAScript世界不久的菜鸟,已经被React Native的名气惊到了,开源一周数万星勾起了我浓烈的兴趣.新年新气象,来个HellWorld压压惊吧^_^(故意少打个' ...
- JavaScript 新手的踩坑日记
引语 在1995年5月,Eich 大神在10天内就写出了第一个脚本语言的版本,JavaScript 的第一个代号是 Mocha,Marc Andreesen 起的这个名字.由于商标问题以及很多产品已经 ...
- 人工智能(AI)库TensorFlow 踩坑日记之二
上次 踩坑日志之一 遗留的问题终于解决了,所以作者(也就是我)终于有脸出来写第二篇了. 首先还是贴上 卷积算法的示例代码地址 :https://github.com/tensorflow/models ...
- 微信小程序开发踩坑日记
2017.12.29 踩坑记录 引用图片名称不要使用中文,尽量使用中文命名,IDE中图片显示无异样,手机上图片可能出现不显示的情况. 2018.1.5 踩坑记录 微信小程序设置元素满屏,横向直接w ...
- cocos creator踩坑日记
踩坑一 问题:项目在构建成Web Mobile后运行在浏览器和微信中,点击页面任何地方都会导致自动全屏 解决:在构建之后的main.js中,去掉 cc.view.enableAutoFullScree ...
随机推荐
- P4055 [JSOI2009] 游戏(博弈论 、最大匹配)
P4055 [JSOI2009] 游戏 目录 P4055 [JSOI2009] 游戏 题目传送门 题目大意 : 思路: code 题目传送门 题目大意 : 小AA和小YY玩游戏,在这个游戏中,同一个格 ...
- Three.js 进阶之旅:页面平滑滚动-王国之泪 💧
声明:本文涉及图文和模型素材仅用于个人学习.研究和欣赏,请勿二次修改.非法传播.转载.出版.商用.及进行其他获利行为. 摘要 浏览网页时,常被一些基于鼠标滚轮控制的页面动画所惊艳到,比如greenso ...
- css3 flex弹性布局详解
一.flexbox弹性盒子 2009年,W3C 提出了一种新的方案----Flex 布局,可以简便.完整.响应式地实现各种页面布局.目前,它已经得到了所有浏览器的支持,这意味着,现在就能很安全地使用这 ...
- 代码打包的可视化数据分析图: webpack-bundle-analyzer 的使用
先看webpack-bundle-analyzer的效果图(官方效果图): 通过使用webpack-bundle-analyzer可以看到项目各模块的大小,可以按需优化 1.先安装 npm insta ...
- 2022-06-24:golang选择题,以下golang代码输出什么?A:1;B:3;C:4;D:编译失败。 package main import ( “fmt“ ) func mai
2022-06-24:golang选择题,以下golang代码输出什么?A:1:B:3:C:4:D:编译失败. package main import ( "fmt" ) func ...
- 2021-12-01:给定一个正数数组arr,代表每个人的体重。给定一个正数limit代表船的载重,所有船都是同样的载重量。 每个人的体重都一定不大于船的载重。 要求: 1, 可以1个人单独一搜船;
2021-12-01:给定一个正数数组arr,代表每个人的体重.给定一个正数limit代表船的载重,所有船都是同样的载重量. 每个人的体重都一定不大于船的载重. 要求: 1, 可以1个人单独一搜船: ...
- DataGridViewImageColumn 图片照片
Private Sub BT_PHOTOADDRESS_Click(sender As Object, e As EventArgs) Handles BT_PHOTOADDRESS.Click Di ...
- dotnet平台Http消息处理者工厂
1 前言 Microsoft.Extensions.Http是一个设计非常优异的客户端工厂库,其提供了IHttpClientFactory用于创建HttpClient和IHttpMessageHand ...
- 文心一言 VS 讯飞星火 VS chatgpt (28)-- 算法导论5.1 3题
三.假设你希望以1/2的概率输出0与 1.你可以自由使用一个输出0或1的过程 BIASED-RANDOM.它以某概率 p 输出1,概率 1-p 输出0,其中 0<p<1 ,但是 p 的值未 ...
- karyoploteR: 基因组数据可视化 R 包
karyoploteR,是一个适用于所有基因组数据(any data on any genome)非圆环布局(non-circular layouts)的可视化 R/Bioconductor 包.开发 ...