6.Toast(Android)

愿你出走半生,归来仍是少年! 

环境:.NET 7、MAUI 

        在Maui开发中使用的Toast太丑了,在android项目中使用时不够看。通过Maui的安卓绑定库可实现将android中已有的包导入到C#项目中使用,借助这个方法就可以使用以前在android原生开发中的包了。

1.新建Android Java库项目

        在VS中新建项目,选择“Android 绑定库(Xamarin)”类别的项目,进行创建。

新建项目

2.导入JAVA包

        将准备好的aar包拷贝至项目的Jars文件夹下,并将其 生成操作设定为“LibraryProjectZip”,然后将项目进行生成。

导入aar包
生成

 3.简单封装

        由于是通过Java导入进来的,所以它的包名会变为命名空间,太长了,进行简单的封装,就成为可在MAUI框架下面向android平台使用的通用包了。

namespace AndroidLib
{
    /// <summary>
    /// 信息提示
    /// </summary>
    public static class Toasty
    {

        /// <summary>
        /// 成功提示
        /// </summary>
        /// <param name="msg">信息</param>
        /// <param name="isShort">显示时长</param>
        public static void Success(string msg, bool isShort=true)
        {
            ES.Dmoral.Toasty.Toasty.Success(Android.App.Application.Context, msg, isShort ? 0 : 1).Show();
        }

        /// <summary>
        /// 错误提示
        /// </summary>
        /// <param name="msg">信息</param>
        /// <param name="isShort">显示时长</param>
        public static void Error(string msg, bool isShort = true)
        {
            ES.Dmoral.Toasty.Toasty.Error(Android.App.Application.Context, msg, isShort ? 0 : 1).Show();
        }

        /// <summary>
        /// 警告提示
        /// </summary>
        /// <param name="msg">信息</param>
        /// <param name="isShort">显示时长</param>
        public static void Warning(string msg, bool isShort = true)
        {
            ES.Dmoral.Toasty.Toasty.Warning(Android.App.Application.Context, msg, isShort ? 0 : 1).Show();
        }

        /// <summary>
        /// 信息提示
        /// </summary>
        /// <param name="msg">信息</param>
        /// <param name="isShort">显示时长</param>
        public static void Info(string msg, bool isShort = true)
        {
            ES.Dmoral.Toasty.Toasty.Info(Android.App.Application.Context, msg, isShort ? 0 : 1).Show();
        }

        /// <summary>
        /// 常规提示
        /// </summary>
        /// <param name="msg">信息</param>
        /// <param name="isShort">显示时长</param>
        public static void Normal(string msg, bool isShort = true)
        {
            ES.Dmoral.Toasty.Toasty.Normal(Android.App.Application.Context, msg, isShort ? 0 : 1).Show();
        }

         
    }
}

4.使用

        主项目程序引用刚才的绑定库项目,并调用上述的封装的类即可使用。

 private   void btn1_Clicked(object sender, EventArgs e)
 {

     Toasty.Normal("普通信息!");
 }

 private void btn2_Clicked(object sender, EventArgs e)
 {
    Toasty.Warning("警告信息!");
 }

 private void btn3_Clicked(object sender, EventArgs e)
 {
     Toasty.Success("成功信息!");
 }

 private void btn4_Clicked(object sender, EventArgs e)
 {
     Toasty.Error("错误信息!");
 }

 private void btn5_Clicked(object sender, EventArgs e)
 {
     Toasty.Info("提示信息!");
 }

5.效果

        可以看出来,这个确实是比MAUI的好看啊!!!

使用效果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/347294.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Spring Security 之摘要认证

摘要认证 注意: 在现代应用程序中不应该使用摘要认证,因为它不被认为是安全的。最明显的问题是你必须以明文或加密或 MD5 格式存储密码。所有这些存储格式都被认为是不安全的。相反,你应该使用单向自适应密码哈希(如 bCrypt、PBKDF2、SCrypt 等)来存储凭据,而这是摘要认…

线性代数速通

二---矩阵 逆矩阵 抽象矩阵求逆 数字型矩阵求逆 二阶矩阵求逆秒杀 解矩阵方程 方阵 伴随矩阵 三---向量组的线性相关性 线性表示 数字型向量组 线性相关性判断 抽象型向量组 线性相关性判断 向量组的秩与极大无关组 四---线性方程组 齐次方程组 基础解系 通解 非齐…

Mediasoup Demo-v3笔记(一)——框架和Nodejs的基本语法

Medisasop Demo的框架 Nodejs基本语法 后记   个人总结&#xff0c;欢迎转载、评论、批评指正

E5 触发器的定义和应用

一、实验目的: 熟练使用MySQL触发器的定义和应用。 二、实验要求: 1、基本硬件配置:英特尔Pentium III 以上,大于4G内存&#xff1b; 2、软件要求:Mysql&#xff1b; 3、时间:1小时&#xff1b; 4、撰写实验报告并按时提交。 三、实验内容: 问题1&#xff1a;创建触发器…

Docker 魔法解密:探索 UnionFS 与 OverlayFS

本文主要介绍了 Docker 的另一个核心技术&#xff1a;Union File System。主要包括对 overlayfs 的演示&#xff0c;以及分析 docker 是如何借助 ufs 实现容器 rootfs 的。 1. 概述 Union File System Union File System &#xff0c;简称 UnionFS 是一种为 Linux FreeBSD NetB…

应急响应红蓝工程师白帽子取证Linux和windows入侵排查还原攻击痕迹,追溯攻击者,以及各种木马和病毒以及恶意脚本文件排查和清除

应急响应红蓝工程师白帽子取证Linux入侵排查还原攻击痕迹,追溯攻击者,以及各种木马和病毒以及恶意脚本文件排查和清除。 一般服务器被入侵的迹象,包括但不局限于:由内向外发送大量数据包(DDOS肉鸡)、服务器资源被耗尽(挖矿程序)、不正常的端口连接(反向shell等)、服务…

#常见问题总结#在docker中跑前端vue项目

目录 前言一、no such file or directory, open...总结 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; 记录在docker中跑前端项目过程中&#xff0c;我遇到的问题以及解决方法 提示&#xff1a;以下是本篇文章正文内容&#xff0c;下面案例可供参考 一…

github 推送报错 ssh: connect to host github.com port 22: Connection timed out 解决

&#x1f680; 作者主页&#xff1a; 有来技术 &#x1f525; 开源项目&#xff1a; youlai-mall &#x1f343; vue3-element-admin &#x1f343; youlai-boot &#x1f33a; 仓库主页&#xff1a; Gitee &#x1f4ab; Github &#x1f4ab; GitCode &#x1f496; 欢迎点赞…

伦敦金技术分析如何避免事后诸葛的尴尬

技术分析是我们分析伦敦金走势的常用工具&#xff0c;但技术分析长期因为“事后诸葛”的特点而备受一些投资者责难。那有没有什么办法可以避免这种事后诸葛的尴尬呢&#xff1f;下面我们就来讨论一下。 技术分析的事后诸葛是指&#xff0c;在当下用技术分析方法进行分析判断时经…

js - - - - - 如何给自己的网站添加中英文切换(多语言也可)

如何给自己的网站添加中英文切换 1. 需求描述2. 解决方案3. 方案实施3.1 简单实现&#xff08;第一版&#xff09; 3.2 样式微调&#xff08;第二版&#xff09;3.3 重载页面&#xff08;第三版&#xff09;3.4 自动翻译&#xff08;第四版&#xff09;3.5 限定适用范围&#x…

程序员如何保持身心健康

程序员要保持身心健康&#xff0c;可以注意以下几个方面&#xff1a; 饮食健康&#xff1a;保持均衡的饮食&#xff0c;多吃蔬菜水果&#xff0c;减少油腻和高热量食物的摄入。同时&#xff0c;适当饮水&#xff0c;避免因长时间坐着工作而导致的脱水。尽量不要吃街边摊、大排…

人工智能(AI)技术应用:解锁未来的无限可能

随着信息时代的来临&#xff0c;人工智能(AI)技术成为推动社会进步的重要力量。在医疗领域&#xff0c;人工智能技术已经开始发挥重要作用。通过大数据分析和机器学习&#xff0c;人工智能可以帮助医生更准确地诊断疾病、制定治疗方案&#xff0c;缩短治疗时间&#xff0c;提高…

JuiceSSH结合内网穿透实现移动端设备公网远程访问Linux虚拟机

文章目录 1. Linux安装cpolar2. 创建公网SSH连接地址3. JuiceSSH公网远程连接4. 固定连接SSH公网地址5. SSH固定地址连接测试 处于内网的虚拟机如何被外网访问呢?如何手机就能访问虚拟机呢? cpolarJuiceSSH 实现手机端远程连接Linux虚拟机(内网穿透,手机端连接Linux虚拟机) …

js计算皮尔逊相关系数

代码如下; let XGX {correlationCoefficient(pA, pB) {let covXY -pA * pBlet varX pA * (1-pA) let varY (1-pB)* pBlet res covXY / (Math.sqrt(varX*varY, 2))return res},correlation(x,y){x[0.3,50.2,99.5,199.3,299,398];y[0.1,50,99.9,200,300,400];// 计算均值con…

字典树-Python

字典树 字典树又叫前缀树、单词查找树&#xff0c;树形结构&#xff0c;是哈希树的变种。能够统计、排序和保存大量的字符串&#xff0c;经常被搜索引擎系统用于文本词频统计。优点是利用字符串的公共前缀来减少查询时间&#xff0c;最大程度减少无谓字符串的比较&#xff0c;…

C语言通过IXMLHTTPRequest以get或post方式发送http请求获取服务器文本或xml数据

做过网页设计的人应该都知道ajax。 Ajax即Asynchronous Javascript And XML&#xff08;异步的JavaScript和XML&#xff09;。使用Ajax的最大优点&#xff0c;就是能在不更新整个页面的前提下维护数据。这使得Web应用程序更为迅捷地回应用户动作&#xff0c;并避免了在网络上发…

【量化交易】股市舞者:小明的撮合交易之旅

马西森AES撮合交易系统 在繁华的都市中&#xff0c;小明&#xff0c;一个普通的青年&#xff0c;刚刚赚到了人生的第一桶金——20万。这笔意外的财富&#xff0c;点燃了他对股市的强烈兴趣。他开始如饥似渴地学习金融知识&#xff0c;钻研各种交易策略。 一天&#xff0c;小…

现货黄金做日内交易和波段交易有何差异?

在现货黄金投资中&#xff0c;日内交易和波段交易都是投资者常用的手段。但投资者其实搞不懂两者有何区别&#xff0c;有时甚至不清楚自己做的是日内交易还是波段交易&#xff0c;下面我们就来讨论一下这两种交易方法的异同。 两者的区别主要是在持仓的时间上。日内交易顾名思义…

Python算法题集_接雨水

本文为Python算法题集之一的代码示例 题目42&#xff1a;接雨水 说明&#xff1a;给定 n 个非负整数表示每个宽度为 1 的柱子的高度图&#xff0c;计算按此排列的柱子&#xff0c;下雨之后能接多少雨水 示例 1&#xff1a; 输入&#xff1a;height [0,1,0,2,1,0,1,3,2,1,2,…

【计算机网络】【练习题】【新加坡南洋理工大学】【Computer Control Network】

说明&#xff1a; 仅供学习使用。 一、题目描述 该题目描述一个网络中传播时延&#xff08;Transmission Delay&#xff09;的例子。题目如下&#xff1a; 二、问题解答&#xff08;个人&#xff09; 笔者第3问采用均值不等式求解。标答中采用求导数的方法求极值。似乎均值…