Unity开发实战:实现提示面板的显示与隐藏
创作时间:
作者:
@小白创作中心
Unity开发实战:实现提示面板的显示与隐藏
引用
CSDN
1.
https://blog.csdn.net/weixin_43908355/article/details/145816771
在Unity开发中,提示面板的显示与隐藏是一个常见的功能需求。本文将通过一个具体的案例,详细介绍如何实现当鼠标靠近物体时提示面板显示,离开物体时提示面板隐藏的效果。
1. 添加CanvasGroup组件
首先,需要在要控制的UI元素上添加CanvasGroup组件。CanvasGroup是Unity的UGUI系统中的一个组件,用于控制UI元素的显示、隐藏以及透明度等属性。
2. 代码设置CanvasGroup里的Alpha值
CanvasGroup组件中的Alpha属性用于控制UI元素的透明度,其取值范围为0到1。其中,0表示完全透明(即隐藏),1表示完全不透明(即显示)。我们可以通过差值顺滑渐变的方式来实现面板的显示与隐藏效果。
以下是具体的代码实现:
using UnityEngine;
using UnityEngine.UI;
public class InfoTips : MonoBehaviour
{
private float targetAlpha = 0;
private float smoothing = 1f;
private CanvasGroup canvasGroup;
private void Start()
{
canvasGroup = GetComponent<CanvasGroup>();
smoothing = 5f;
}
private void Update()
{
if (canvasGroup.alpha != targetAlpha)
{
canvasGroup.alpha = Mathf.Lerp(canvasGroup.alpha, targetAlpha, smoothing * Time.deltaTime);
if (Mathf.Abs(canvasGroup.alpha - targetAlpha) < 0.01f)
{
canvasGroup.alpha = targetAlpha;
}
}
}
public void ShowTips()
{
targetAlpha = 1;
}
public void HideTips()
{
targetAlpha = 0;
}
}
3. 调用面板显示隐藏函数
为了实现当鼠标靠近物体时显示提示面板,离开物体时隐藏提示面板的效果,我们可以使用Unity的事件系统。具体来说,可以通过实现IPointerEnterHandler和IPointerExitHandler接口来监听鼠标进入和离开事件。
以下是具体的代码实现:
using UnityEngine;
using UnityEngine.EventSystems;
public class Slot : MonoBehaviour, IPointerEnterHandler, IPointerExitHandler
{
public InfoTips tips;
public void OnPointerEnter(PointerEventData eventData)
{
tips.ShowTips();
}
public void OnPointerExit(PointerEventData eventData)
{
tips.HideTips();
}
}
通过以上三个步骤,我们就能够实现一个简单的提示面板显示与隐藏功能。这个功能在很多游戏和应用中都有广泛的应用,例如在物品栏中显示物品信息,或者在UI元素上显示提示信息等。
热门推荐
库存领域核心能力--库存预占 建设实践
国内外前置仓模式发展对比:机遇与挑战并存
《梦娃》:一部值得家长和孩子共同观看的优秀动画片
一文读懂半夜醒:原因分析与改善指南
初学者福音:少儿围棋 vs 弈客围棋,谁更适合你?
成都限行新政,尾号限行API来帮忙
牛奶丝:环保时尚的新宠儿
职业棋手详解:从基础到实战的围棋杀棋技巧
绿豆汤变红的科学原理:水质与酸碱度是关键因素
三黑浆:秋季养生佳品,三步制作简单又营养
2024年度英语热词出炉:快来看看牛津、剑桥和柯林斯都选了哪一个?
美国人与中国人交往为何成为热议话题?背后的原因与文化差异解析
万万没想到:生活中的意外与幽默
时光只解催人老:晏殊《采桑子》中的离愁别恨
种植牙可以医保报销么
农村过年灯笼别瞎挂,学会这几招挂灯笼的方法,来年肯定红红火火
牛奶蛋白纤维:抗菌黑科技引领纺织新趋势
提升免疫力的8大保健食品:营养师推荐的关键营养素
辣爽上头的蒜蓉粉丝花甲煲,自己就能做,从此告别外卖
海鲜脑袋亲测!南北海鲜大盘点,这些地方的这些海鲜品质最佳最好吃
花甲烹饪全攻略:从清洗到美味佳肴的完美呈现
特别好吃的爆炒花甲的家常做法
学习困难门诊爆火:成绩差是一种病?
牛奶蛋白纤维:护肤界的“营养液”还是营销噱头?
牛奶蛋白纤维:时尚界的新宠还是昙花一现?
牛奶蛋白纤维:环保界的时尚新宠
冰箱里的健康陷阱:四类高风险食物储存指南
老姜泡脚缓解脚底发热:正确方法与禁忌
香港必打卡十大景点:繁华都市到自然美景,尽览东方之珠的璀璨
莫纳什大学秦承雪教授团队揭示脂氧素A4改善糖尿病性心肌病的作用机制