开启辅助访问
 找回密码
 注册帐号

扫一扫,访问微社区

查看: 895|回复: 6

Unity UGUI Button.onClick 动态添加知识点

[复制链接]  [移动端链接]
7日久生情
1731/5000
排名
759
昨日变化

9

主题

56

帖子

1731

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
79646
好友
0
蛮牛币
3476
威望
0
注册时间
2015-3-14
在线时间
674 小时
最后登录
2017-8-23
QQ
发表于 2016-11-18 18:04:50 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册帐号

x
本帖最后由 PtrPa 于 2016-11-19 08:44 编辑

29232197-D672-4AEB-B6BA-96067A02576A.png


/------------------------------------------分割线---------------------------------------------/
using UnityEngine;
using System.Collections;
using UnityEngine.UI;

public class Test : MonoBehaviour {

        Button[] arrBtns;

        string[] strs={"批量","添加","有参方法"};
        void Start () {
               
        
                arrBtns=transform.GetComponentsInChildren<Button>();


                arrBtns[0].onClick.AddListener(OnClickOne); //动态添加无参的方法
                arrBtns[1].onClick.AddListener(()=>{OnClickTwo("方法一");});     //动态添加有参的方法有两种
                arrBtns[2].onClick.AddListener(delegate (){OnClickTwo("方法二");});

                //测试单个方法动态添加时 请注释掉 for的内容
                for (int i = 0; i < arrBtns.Length; i++)
                {
                        string str=strs ;  //这里取的是 strs数组i的值 参数需要接收一下 要不然每次便利参数都会被覆盖一次

                        arrBtns.onClick.AddListener(()=>{OnClickTwo(str);});

                }

        }
        
        // Update is called once per frame
        void Update () {
        
        }

        private void OnClickOne()
        {
                Debug.Log("无参");
        }

        private void OnClickTwo(string value)
        {

                Debug.Log(value);
        }
}



回复

使用道具 举报

6蛮牛粉丝
1120/1500
排名
49710
昨日变化
353

3

主题

594

帖子

1120

积分

Rank: 6Rank: 6Rank: 6

UID
63377
好友
0
蛮牛币
38
威望
0
注册时间
2014-12-24
在线时间
521 小时
最后登录
2017-8-23
发表于 2016-11-18 22:44:20 | 显示全部楼层
感觉很不错的样子啊啊
[发帖际遇]: 商城新_e88uA 发帖时在路边捡到 1 蛮牛币,偷偷放进了口袋. 幸运榜 / 衰神榜

回复 支持 反对

使用道具 举报

6蛮牛粉丝
1245/1500
排名
5027
昨日变化
2

2

主题

776

帖子

1245

积分

Rank: 6Rank: 6Rank: 6

UID
92518
好友
1
蛮牛币
2466
威望
0
注册时间
2015-4-15
在线时间
277 小时
最后登录
2017-4-6
发表于 2016-12-7 10:41:44 | 显示全部楼层
public class Test : MonoBehaviour {

        Button[] arrBtns;

        string[] strs={"批量","添加","有参方法"};
        void Start () {
               
        
                arrBtns=transform.GetComponentsInChildren<Button>();


                arrBtns[0].onClick.AddListener(OnClickOne); //动态添加无参的方法
                arrBtns[1].onClick.AddListener(()=>{OnClickTwo("方法一");});     //动态添加有参的方法有两种
                arrBtns[2].onClick.AddListener(delegate (){OnClickTwo("方法二");});

                //测试单个方法动态添加时 请注释掉 for的内容
                for (int i = 0; i < arrBtns.Length; i++)
                {
                        string str=strs ;  //这里取的是 strs数组i的值 参数需要接收一下 要不然每次便利参数都会被覆盖一次

                        arrBtns.onClick.AddListener(()=>{OnClickTwo(str);});

                }

        }
        
        // Update is called once per frame
        void Update () {
        
        }

        private void OnClickOne()
        {
                Debug.Log("无参");
        }

        private void OnClickTwo(string value)
        {

                Debug.Log(value);
        }
}

回复 支持 反对

使用道具 举报

7日久生情
1731/5000
排名
759
昨日变化

9

主题

56

帖子

1731

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
79646
好友
0
蛮牛币
3476
威望
0
注册时间
2015-3-14
在线时间
674 小时
最后登录
2017-8-23
QQ
 楼主| 发表于 2016-12-7 10:57:33 | 显示全部楼层
825 发表于 2016-12-7 10:41
public class Test : MonoBehaviour {

        Button[] arrBtns;

我这里有什么问题么,哪里写错了

回复 支持 反对

使用道具 举报

6蛮牛粉丝
1245/1500
排名
5027
昨日变化
2

2

主题

776

帖子

1245

积分

Rank: 6Rank: 6Rank: 6

UID
92518
好友
1
蛮牛币
2466
威望
0
注册时间
2015-4-15
在线时间
277 小时
最后登录
2017-4-6
发表于 2016-12-7 12:01:28 | 显示全部楼层
PtrPa 发表于 2016-12-7 10:57
我这里有什么问题么,哪里写错了

string str=strs ;

回复 支持 反对

使用道具 举报

6蛮牛粉丝
1245/1500
排名
5027
昨日变化
2

2

主题

776

帖子

1245

积分

Rank: 6Rank: 6Rank: 6

UID
92518
好友
1
蛮牛币
2466
威望
0
注册时间
2015-4-15
在线时间
277 小时
最后登录
2017-4-6
发表于 2016-12-7 12:02:49 | 显示全部楼层
string str=strs【i】 ;
[发帖际遇]: 一个袋子砸在了 825 头上,825 赚了 1 蛮牛币. 幸运榜 / 衰神榜

回复 支持 反对

使用道具 举报

7日久生情
1731/5000
排名
759
昨日变化

9

主题

56

帖子

1731

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
79646
好友
0
蛮牛币
3476
威望
0
注册时间
2015-3-14
在线时间
674 小时
最后登录
2017-8-23
QQ
 楼主| 发表于 2016-12-7 17:25:18 | 显示全部楼层
825 发表于 2016-12-7 12:02
string str=strs【i】 ;

那个 i 打不出来 以 图片为准

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

快速回复 返回顶部 返回列表