1.导航栏设计

1.1 由于需要水平布局的设计方式,所以外围需要使用一个HorizontalStackLayout 进行包裹着所有的子控件,来达到水平布局的效果。页面大概是这样子,按钮全部由RadioButton 进行重绘

最终要做的效果:

1.2 代码页面设计

1.3 运行效果发现,整个页面不怎么理想。所有的控件都是垂直居中。

1.4 那么可以通过设置布局控件 HorizontalStackLayout的VerticalOptions属性,值设为Start ,把这个RadioButton 显示在开头

  • Start 该位置位于 RadioButton 开头HorizontalStackLayout
  • Center 垂直居中 RadioButton HorizontalStackLayout
  • End 该位置位于 RadioButton 末尾 HorizontalStackLayout
  • Fill 这可确保 RadioButton 填充的高度 HorizontalStackLayout

以上出自官网的文档:.NET MAUI HorizontalStackLayout - .NET MAUI | Microsoft Docs

这张图片出自官方文档

1.5 设置后的效果

2. 隐藏安卓显示的状态栏,以及标题栏。

2.1 由于项目初始加载是AppShell.xaml,这个AppShell.xaml引用了MainPage.xaml页面模板。把Home标题去掉,只需要在页面调用的时候直接指向MainPage.xaml 页面即可

2.2 要在应用中不显示手机状态栏,需要进入安卓设备进行修改

2.3 打开安卓文件夹,在MainActivity 类中调整安卓渲染的相关配置信息(外层窗口的配置信息)

  • 重写OnCreate 方法

  protected override void OnCreate(Bundle savedInstanceState){//全透明任务栏Window.SetFlags(Android.Views.WindowManagerFlags.TranslucentNavigation,Android.Views.WindowManagerFlags.TranslucentNavigation);//设置状态栏,导航样颜色为透明Window.SetStatusBarColor(Android.Graphics.Color.Transparent);Window.SetNavigationBarColor(Android.Graphics.Color.Transparent);base.OnCreate(savedInstanceState);}

2.4 修改后的效果

3. 进行页面样式调整

  • 调整边距使用Margin属性
  • 把整个页面改颜色,用Background 属性,需要在ContentPage 里面修改

3.1 修改RadioButton 样式模板,这章节有介绍

  • 首先统一设置样式,并且设置Key
  • 在RadioButton 中,通过StaticResource 去关联到设置的统一样式

3.2 统一修改控件模板

上面的意思就是通过绑定的关系,实现模板中的Text 文字关联到实际控件的值

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"x:Class="MauiApp1.MainPage" Background="LightGray"><ContentPage.Resources><Style TargetType="RadioButton" x:Key="NavButtonStyle"><Setter Property="ControlTemplate"><ControlTemplate><Grid><Grid.RowDefinitions><RowDefinition /><RowDefinition Height="30" /></Grid.RowDefinitions><Label Text="{TemplateBinding Content}"></Label></Grid></ControlTemplate></Setter></Style></ContentPage.Resources><HorizontalStackLayout VerticalOptions="Start" Margin="0,30,0,0"><RadioButton Content="灯光" Style="{StaticResource NavButtonStyle}"></RadioButton><RadioButton Content="灯光" Style="{StaticResource NavButtonStyle}"></RadioButton><RadioButton Content="灯光" Style="{StaticResource NavButtonStyle}"></RadioButton><RadioButton Content="灯光" Style="{StaticResource NavButtonStyle}"></RadioButton><RadioButton Content="灯光" Style="{StaticResource NavButtonStyle}"></RadioButton></HorizontalStackLayout></ContentPage>

下一章接着处理布局

出自:全网首发.NET MAUI框架入门 已完结 附企业级WPF实战(C#/blazor/xamarin/停车场项目+通用框架+数据采集与监控/数据库)B0858_哔哩哔哩_bilibili

仅做为个人学习记录,仅供个人参考。 

MAUI 框架安卓入门开发01 界面设计相关推荐

  1. 奉献给你:《Visual C# 2005程序开发与界面设计秘诀》

    对于<Visual C# 2005程序开发与界面设计秘诀>,我们将其定位为一本Visual C# 2005的进阶技术研讨书,针对的是曾使用过Visual C# 2002或者已经对新版本的V ...

  2. 游戏开发UI界面设计需要注意什么?

    棋牌游戏能否在市场中得到玩家的欢迎主要取决于棋牌游戏产品的玩法,界面风格,以及运行环境.特别是在棋牌游戏开发完成运营初期,UI界面更是棋牌平台是否能吸引更多玩家的关键因素之一. 因此,棋牌游戏开发UI ...

  3. 安卓手机应用软件UI界面设计展示PR样机模板MOGRT

    9个不同角度展示安卓手机应用软件UI界面设计作品展示PR模板Mogrt|Android安卓样机模板 主要特点: 适用于 Premiere Pro CC 2021+ 适用于图像或视频 轻松改变颜色 轻松 ...

  4. html5开发桌面界面设计,HTML5触摸界面设计与开发

    HTML5触摸界面设计与开发 编辑 锁定 讨论 上传视频 <HTML5触摸界面设计与开发>是人民邮电出版社于2014年出版的一本图书,作者是伍兹 (Stephen Woods).[1] 中 ...

  5. 安卓JNI开发-01

    安卓JNI开发 java中调用C,并传入相应数据进行模拟处理后再返回到java中 package com.example.jnitest;import java.util.Arrays;import ...

  6. 【论文写作】课程指导平台的开发中界面设计如何写

    3.3 界面设计 3.3.1系统色彩规划 网站是信息的载体形式,色彩设计必须以完成网站可视性阅读功能为目的.本系统采用蓝色基调,白色,红色,黑色为辅调. 蓝色对视觉器官刺激较弱,它代表天空.清爽.平静 ...

  7. 安卓入门系列-01开发工具Android Studio的安装

    Android Studio的安装 背景 谷歌在早几年就关闭了第三方支持,现在官方主推的开发工具就是Android Studio,所以我的安卓开发也是从as开始的. 步骤 下载IDE 像安卓这类开发, ...

  8. Visual C# 2008程序开发与界面设计秘诀

    条款1  如何生成可执行文件.EXE 您可以采用下列两种方式来生成可执行文件.EXE: 方法一:在Visual Studio 2005的集成开发环境中,从"生成"菜单中选择&qu ...

  9. ui设计需要做android和苹果版本,UI知识,安卓和苹果的界面设计之尺寸规范

    在手机大行其道的今天,设计师难免会和手机打交道,因而在设计过程中,了解手机的界面尺寸规范显得尤为重要. iPhone.iPad.Android UI常用设计尺寸 iPhone: APPLE APP S ...

最新文章

  1. Windows下curl使用
  2. centos7使用yum安装mysql
  3. 深浅拷贝、函数、内置函数、文件处理、三元运算、递归
  4. Linux 系统调用(二)——使用内核模块添加系统调用(无需编译内核)
  5. 中山网络推广解答网站排名优化为什么总是上不了首页!
  6. python判断英文
  7. 关于Android SDK工具Lint的误报分析
  8. final 在 java 中有什么作用?
  9. 开源软件那么多,我们该如何选择?|洞见
  10. Linux C高级编程——时间编程
  11. 4.Jenkins 权威指南 --- 自动化测试
  12. 解除网页百度云自动关联客户端,可通过迅雷或浏览者下载
  13. 360面临两线作战----手机安全领域硝烟再起
  14. 小程序出现 返回顶部按钮 top
  15. 初级软件测试工程师工资(薪资待遇)一般是多少?
  16. html中pre与xmp标签的区别是什么
  17. (超清版) 网络协议神图
  18. 今天终于知道了什么是X-window中字体hinting的含义了!
  19. 支付宝微信红包战背后的算盘
  20. hive中出现rg.apache.hadoop.hive.ql.exec.mr.MapRedTask错误

热门文章

  1. pve远程连接 spcie_PVE相关 篇一:解决CX341a PVE 中报错PCIe Bus Error
  2. 3D彩票系统,面向对象编程版
  3. linux普通用户句柄数上限,linux系统下的用户文件句柄数限制
  4. 短信猫数据库中间件二次开发使用说明
  5. 怎么样区分杠杆和融资?
  6. Revit二开 Addin文件编写问题
  7. 【引用】ubuntu服务器配置-(二)
  8. AI 芯片发展的前世今生
  9. 奇虎360完成股改增资 新股权结构曝光
  10. leetcode----1447.最简分数(辗转相除法求最大公约数)