下面脚本实现的功能:

1.将本地图片(PNG和JPG)加载到UGUI上的Button的Image

2.用Scroll View组件自动排列

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.IO;
using UnityEngine.UI;public class Choose : MonoBehaviour
{private GameObject canvas;private Button _btn;private GameObject button;private List<Texture2D> images = new List<Texture2D>();void Start(){canvas = GameObject.Find("Canvas/Scroll View/Viewport/Content");load();for (int i = 0; i < images.Count; i++){button = new GameObject("Button" + i, typeof(Button), typeof(RectTransform), typeof(Image));  //创建一个GameObject 加入Button组件button.transform.SetParent(this.canvas.transform);  //把Canvas设置成Button的父物体_btn = button.GetComponent<Button>();   //获得Button的Button组件//先创建一个Texture2D对象,用于把流数据转成Texture2DSprite sprite = Sprite.Create(images[i], new Rect(0, 0, images[i].width, images[i].height), Vector2.zero);button.GetComponent<Image>().sprite = sprite;button.GetComponent<Button>().onClick.AddListener(ChooseButton);}}/// <summary>/// 加载文件夹内图片/// </summary>void load(){List<string> filePaths = new List<string>();string imgtype = "*.BMP|*.JPG|*.GIF|*.PNG";string[] ImageType = imgtype.Split('|');for (int i = 0; i < ImageType.Length; i++){//获取Application.dataPath文件夹下所有的图片路径  string[] dirs = Directory.GetFiles((Application.dataPath + "/Resources/Screenshot/"), ImageType[i]);for (int j = 0; j < dirs.Length; j++){filePaths.Add(dirs[j]);}}for (int i = 0; i < filePaths.Count; i++){Texture2D tx = new Texture2D(100, 100);tx.LoadImage(getImageByte(filePaths[i]));images.Add(tx);}}/// <summary>  /// 根据图片路径返回图片的字节流byte[]  /// </summary>  /// <param name="imagePath">图片路径</param>  /// <returns>返回的字节流</returns>  private static byte[] getImageByte(string imagePath){FileStream files = new FileStream(imagePath, FileMode.Open);byte[] imgByte = new byte[files.Length];files.Read(imgByte, 0, imgByte.Length);files.Close();return imgByte;}public void ChooseButton(){//UGUI上Button按钮事件Debug.Log("按下了");}}

@Liam:有用→收藏→关注   听说长得好看的人都这么做!

Unity 读取本地文件夹图片相关推荐

  1. PHP 八羊闪电本地相册图片查看器V1 PHP极简代码直接查看本地文件夹图片 源码下载!

    该源码,直接读取本地IMGAGES文件夹的图片,直接显示在相册,点击放大查看,非常方便,非常适合二次开发,但是不适合小白.没有做UI和设计,比较简陋,所以仅仅售价10元钱,想要的就拿去,不想要的就别拍 ...

  2. QListWidget读取本地文件夹中文件并显示名字,双击读取xml数据

    文章目录 前言 一.读取本地文件并显示 二.双击读取数据 前言 本文主要是为了解决QListWidget读取本地文件夹中文件,并且显示的问题.然后双击读取其中xml数据 一.读取本地文件并显示 如下的 ...

  3. Html读取本地文件夹下图片并显示的示例代码

    一 目的 在Html上选择本地文件夹,自动读取文件夹及子文件夹下的所有图片并显示在页面. 技术分析: 存在问题 Html中file标签获取到的路径时相对的. Html中Img指定源时需要的是绝对路径. ...

  4. 自动展示目录下的图片html,Html读取本地文件夹下图片并显示

    一 目的 在Html上选择本地文件夹,自动读取文件夹及子文件夹下的所有图片并显示在页面. 技术分析: 存在问题 Html中file标签获取到的路径时相对的. Html中Img指定源时需要的是绝对路径. ...

  5. Html读取本地文件夹下文件

    目的 在Html上选择本地文件夹,自动读取文件夹及子文件夹下的所有文件(本例以图片为例)并显示. 技术分析         存在问题 Html中file标签获取到的路径时相对的. Html中Img指定 ...

  6. uni 获取本地文件_APP读取本地文件夹内视频播放

    需要用到的几个方法: // 从本地缓存中同步获取指定 key 对应的内容. uni.getStorageSync(KEY) // 下载文件资源到本地,客户端直接发起一个 HTTP GET 请求,返回文 ...

  7. 【100个 Unity实用技能】☀️ | Unity读取本地文件(Json,txt等)的三种方法示例

    Unity 小科普 老规矩,先介绍一下 Unity 的科普小知识: Unity是 实时3D互动内容创作和运营平台 . 包括游戏开发.美术.建筑.汽车设计.影视在内的所有创作者,借助 Unity 将创意 ...

  8. Unity打开电脑本地文件夹选择图片替换

    Unity打开电脑本地文件夹选择图片替换 创建工程添加对应的UI如图所示 创建ChangeImage脚本来监听按钮事件 创建OpenFileName脚本 将代码挂在到窗口,点击运行 创建工程添加对应的 ...

  9. 用python读取pg数据库中的blob类型图片数据,转换存成jpg格式存到本地文件夹

    先啰嗦一下,热热身 在工作中,我们常见到数据库中的数据类型主要为char,varchar,text等,但是有时我们也会用blob格式来存储语音文件或者图像文件,在网上找了很多,都没找到合适的办法,只好 ...

  10. [Unity]读取本地图片ArgumentException: A null reference or invalid value was found错误

    虽然 (Texture2D)Resources.Load(pngFilePath); 可以读取图片, 但是当项目工程文件中存储大量图片,几百万个图片的时候,就会出现项目编译卡顿,等待时间过长的问题. ...

最新文章

  1. java人脸识别更新:摄像头支持360、火狐和谷歌浏览器
  2. linux apache2.4环境,浅谈SUSE Linux下Apache2.4.43部署
  3. python selenium 环境_配置Python Selenium环境
  4. Beetl学习(一)
  5. ARP协议具体解释之Gratuitous ARP(免费ARP)
  6. 收藏精美网页设计作品的200佳网站推荐(系列五)
  7. 新版掌上阅读小说源码+支持公众号/分站/封装APP
  8. 抖音视频什么时候投放dou+最好,dou+投放实战总结:国仁网络资讯
  9. unity Google 广告接入 SDK Android
  10. android使用at指令集,详细的AT指令集
  11. 企业微信的消息如何在个人微信上读取?
  12. Windows禁用端口(445端口为例)
  13. 微信小程序 某个页面直接返回首页(微信小程序回退到首页)
  14. python plt绘制多子图
  15. 使用XUnit的测试驱动开发过程
  16. 使用蓝桥杯单片机做一个智能密码锁可以修改密码
  17. XILINX FPGA OV5640 摄像头驱动(一)
  18. redis实战(12):Redis性能监控指标汇总
  19. 用函数求斐波那契数列前n项和
  20. 我在京东做研发第五期:京东云自研服务器,如何将开发成本降低 60% 的同时还更低碳环保?

热门文章

  1. 【Rust 笔记】08-枚举与模式
  2. C 里 求 log2 N 的问题
  3. 创意无价,优化 百度、Bing、Duckduckgo 三大国际搜索引擎
  4. 一级标题段前段后一行设置方法
  5. Image data of dtype object cannot be converted to float 问题解决
  6. 专访:6位飞桨开发者的「新生代」AI创新故事!
  7. 如何使用ERD设计关系数据库?
  8. 2021年黄石二中高考成绩查询,【黄石二中2018高考金榜】黄石二中2004届高考总结...
  9. 服务器被攻击显示,怎么查看服务器被攻击
  10. Unity3D 2D设计小游戏移动幻影的实现