当前位置:   article > 正文

unity 点击事件

unity 点击事件

目录

点击按钮,显示图片功能教程

第1步添加ui button,添加ui RawImage

第2步 添加脚本:

第3步,把脚本拖拽到button,点击button,设置脚本的变量,

GameObject添加 Component组件


点击按钮,显示图片功能教程

第1步添加ui button,添加ui RawImage

第2步 添加脚本:

  1. using System;
  2. using System.Collections;
  3. using System.Collections.Generic;
  4. using System.IO;
  5. using UnityEngine;
  6. using UnityEngine.UI;
  7. public class LoadImageByString : MonoBehaviour
  8. {
  9. public RawImage showImage;
  10. public Button loadImage;
  11. private string imgPath;
  12. private string imageStr;
  13. // Start is called before the first frame update
  14. private void Awake()
  15. {
  16. Debug.Log("醒了");
  17. imgPath = @"C:\Users\Administrator\Pictures\mm\pics\005953_4.jpg";
  18. Debug.Log(imgPath);
  19. imageStr = SetImageToString(imgPath);
  20. }
  21. void Start()
  22. {
  23. Debug.Log("醒了");
  24. imgPath = @"C:\Users\Administrator\Pictures\mm\pics\005953_4.jpg";
  25. Debug.Log(imgPath);
  26. imageStr = SetImageToString(imgPath);
  27. // loadImage = gameObject.GetComponent<Button>();
  28. // showImage = gameObject.GetComponent<RawImage>();
  29. Debug.Log("开始");
  30. // showImage.texture = GetTextureByString(imageStr);
  31. loadImage.onClick.AddListener(() =>
  32. {
  33. showImage.texture = GetTextureByString(imageStr);
  34. });
  35. }
  36. /// <summary>
  37. /// 将图片转化为字符串
  38. /// </summary>
  39. private string SetImageToString(string imgPath)
  40. {
  41. Debug.Log("将图片转化为字符串");
  42. FileStream fs = new FileStream(imgPath, FileMode.Open);
  43. byte[] imgByte = new byte[fs.Length];
  44. fs.Read(imgByte, 0, imgByte.Length);
  45. fs.Close();
  46. return Convert.ToBase64String(imgByte);
  47. }
  48. /// <summary>
  49. /// 将字符串转换为纹理
  50. /// </summary>
  51. private Texture2D GetTextureByString(string textureStr)
  52. {
  53. Debug.Log("将字符串转换为纹理");
  54. Texture2D tex = new Texture2D(10, 10);
  55. byte[] arr = Convert.FromBase64String(textureStr);
  56. tex.LoadImage(arr);
  57. tex.Apply();
  58. return tex;
  59. }
  60. public void onclick()
  61. {
  62. Debug.Log("按下了");
  63. }
  64. }

第3步,把脚本拖拽到button,点击button,设置脚本的变量,

运行,点击button,看RawImage显示图片,至此ok。 

左边选择场景,canvas,选择button,正常情况下,onclick会关联事件函数。

但是从网上开源项目改的,就没有。

GameObject添加 Component组件

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/117427
推荐阅读
相关标签
  

闽ICP备14008679号