游戏蛮牛学习群(纯技术交流,不闲聊):539178957
游戏蛮牛 手机端
开启辅助访问
 找回密码
 注册帐号

扫一扫,访问微社区

问答求助

关注:531

当前位置:游戏蛮牛 技术专区 问答求助

_____________________________________________________________________________________________________________
问答求助版块规则:

  1、问题尽量描述清楚
      2、代码要放在代码块里
      3、附件最好放到云盘,然后把链接放到TXT文档里,上传TXT文档。【最好没有附件,你懂得】
      4、本版块回复不得无意义,如:顶、呵呵、不错......以及擦边!【真的会扣分的哦】严重者,封IP!
      5、问题得到解决,请选择最佳答案。
      6、若问题是你自己解决了,可以联系管理员,返还蛮牛币,写下你的答案,另有蛮牛币奖赏。
_____________________________________________________________________________________________________________
查看: 2297|回复: 14

[脚本] 代码添加button事件,怎么传参数

[复制链接]  [移动端链接]
5熟悉之中
815/1000
排名
3050
昨日变化
1

23

主题

109

帖子

815

积分

Rank: 5Rank: 5

UID
149679
好友
0
蛮牛币
763
威望
0
注册时间
2016-5-24
在线时间
257 小时
最后登录
2018-6-21
发表于 2017-5-18 11:40:39 | 显示全部楼层 |阅读模式
5蛮牛币
RepairEvent我想写一个带参数的函数,但是这个AddListener不支持带参数的函数,有什么方法解决吗
QQ截图20170518113827.png

本帖被以下淘专辑推荐:


回复

使用道具 举报

5熟悉之中
690/1000
排名
13823
昨日变化
5

23

主题

271

帖子

690

积分

Rank: 5Rank: 5

UID
74942
好友
2
蛮牛币
270
威望
0
注册时间
2015-2-15
在线时间
369 小时
最后登录
2018-6-23
发表于 2017-5-18 11:40:40 | 显示全部楼层
  GetComponent<UnityEngine.UI.Button>().onClick.AddListener(delegate { OnClick(gameObject); });

回复

使用道具 举报

5熟悉之中
815/1000
排名
3050
昨日变化
1

23

主题

109

帖子

815

积分

Rank: 5Rank: 5

UID
149679
好友
0
蛮牛币
763
威望
0
注册时间
2016-5-24
在线时间
257 小时
最后登录
2018-6-21
 楼主| 发表于 2017-5-18 11:43:20 | 显示全部楼层
Item.FindChild("repair").GetComponent<Button>().onClick.AddListener(RepairEvent);
我是这样添加事件的,有其他方式吗,这样添加好像不能传参数,好像unity写死的

回复

使用道具 举报

排名
663
昨日变化
3

229

主题

1万

帖子

1万

积分

Rank: 12Rank: 12Rank: 12

UID
78862
好友
12
蛮牛币
10951
威望
0
注册时间
2015-3-11
在线时间
2722 小时
最后登录
2018-6-23
QQ
发表于 2017-5-18 12:23:27 来自Mobile--- | 显示全部楼层
你看看这个,四种方式:http://www.cnblogs.com/isayes/p/6370168.html,代码添加的都没有参数,如果要传参就事先添加好啊

回复

使用道具 举报

5熟悉之中
815/1000
排名
3050
昨日变化
1

23

主题

109

帖子

815

积分

Rank: 5Rank: 5

UID
149679
好友
0
蛮牛币
763
威望
0
注册时间
2016-5-24
在线时间
257 小时
最后登录
2018-6-21
 楼主| 发表于 2017-5-18 13:03:20 | 显示全部楼层
lilexy 发表于 2017-5-18 12:23
你看看这个,四种方式:http://www.cnblogs.com/isayes/p/6370168.html,代码添加的都没有参数,如果要传参 ...

我的问题就是代码添加传参函数事件,你这个链接没写这个问题啊
[发帖际遇]: zzzsss 发帖时在路边捡到 1 蛮牛币,偷偷放进了口袋. 幸运榜 / 衰神榜

回复

使用道具 举报

排名
663
昨日变化
3

229

主题

1万

帖子

1万

积分

Rank: 12Rank: 12Rank: 12

UID
78862
好友
12
蛮牛币
10951
威望
0
注册时间
2015-3-11
在线时间
2722 小时
最后登录
2018-6-23
QQ
发表于 2017-5-18 13:03:55 来自Mobile--- | 显示全部楼层
传参估计是实现不了

回复

使用道具 举报

7日久生情
2102/5000
排名
898
昨日变化
1

4

主题

152

帖子

2102

积分

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

UID
64697
好友
1
蛮牛币
5763
威望
0
注册时间
2014-12-30
在线时间
892 小时
最后登录
2018-6-11
发表于 2017-5-18 13:27:03 | 显示全部楼层
不知道你要干啥,,给你个损招,,,,,,,,,,,,,
弄个纯数据角本,,,,,,,,,,,和button事件角本同时挂到某物上,,,,,,,,,,

onclick时得到自己所在物的这个角本,读出一切

回复

使用道具 举报

排名
24823
昨日变化
7

21

主题

108

帖子

357

积分

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

UID
156801
好友
2
蛮牛币
585
威望
0
注册时间
2016-7-15
在线时间
179 小时
最后登录
2017-11-6
发表于 2017-5-18 13:57:46 | 显示全部楼层
善良的农民 发表于 2017-5-18 13:42
GetComponent().onClick.AddListener(delegate { OnClick(gameObject); });

正解!!!!!!!

回复

使用道具 举报

5熟悉之中
815/1000
排名
3050
昨日变化
1

23

主题

109

帖子

815

积分

Rank: 5Rank: 5

UID
149679
好友
0
蛮牛币
763
威望
0
注册时间
2016-5-24
在线时间
257 小时
最后登录
2018-6-21
 楼主| 发表于 2017-5-18 15:15:50 | 显示全部楼层
善良的农民 发表于 2017-5-18 13:42
GetComponent().onClick.AddListener(delegate { OnClick(gameObject); });

棒棒的,匿名方法确实可以

回复

使用道具 举报

排名
663
昨日变化
3

229

主题

1万

帖子

1万

积分

Rank: 12Rank: 12Rank: 12

UID
78862
好友
12
蛮牛币
10951
威望
0
注册时间
2015-3-11
在线时间
2722 小时
最后登录
2018-6-23
QQ
发表于 2017-5-18 16:25:56 来自Mobile--- | 显示全部楼层
善良的农民 发表于 2017-5-18 11:40
GetComponent().onClick.AddListener(delegate { OnClick(gameObject); });

不错,很厉害哦

回复

使用道具 举报

5熟悉之中
755/1000
排名
3428
昨日变化
1

5

主题

110

帖子

755

积分

Rank: 5Rank: 5

UID
116481
好友
0
蛮牛币
1111
威望
0
注册时间
2015-8-3
在线时间
256 小时
最后登录
2018-6-7
发表于 2017-5-18 20:53:16 | 显示全部楼层

Item.FindChild("repair").GetComponent<Button>().onClick.AddListener(()=>RepairEvent(参数));

回复

使用道具 举报

7日久生情
1515/5000
排名
1374
昨日变化
4

1

主题

163

帖子

1515

积分

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

UID
132507
好友
0
蛮牛币
2429
威望
0
注册时间
2015-12-24
在线时间
539 小时
最后登录
2018-6-23
发表于 2017-5-19 08:59:08 | 显示全部楼层
()=>{A(参数);};

回复

使用道具 举报

7日久生情
1801/5000
排名
2217
昨日变化

8

主题

737

帖子

1801

积分

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

UID
83438
好友
2
蛮牛币
1907
威望
0
注册时间
2015-3-23
在线时间
484 小时
最后登录
2018-6-22
发表于 2017-5-19 09:23:12 | 显示全部楼层
为啥要加参数 在onclick里面要传不同数值吗? Eventtargs好像是这么写的话 好像能用

回复

使用道具 举报

7日久生情
1552/5000
排名
1298
昨日变化

0

主题

152

帖子

1552

积分

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

UID
133757
好友
0
蛮牛币
4571
威望
0
注册时间
2016-1-6
在线时间
558 小时
最后登录
2018-5-21
发表于 2017-5-19 13:44:00 | 显示全部楼层
[C#] 纯文本查看 复制代码
Btn_Select.onClick.AddListener (delegate() {Fun (0);});

public void Fun(int ID)
{

}
		

回复

使用道具 举报

7日久生情
3451/5000
排名
223
昨日变化

0

主题

628

帖子

3451

积分

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

UID
35380
好友
2
蛮牛币
2424
威望
0
注册时间
2014-7-20
在线时间
935 小时
最后登录
2018-6-22
QQ
发表于 2017-5-22 10:19:32 | 显示全部楼层
一般最简便用delegete,
{
string b = "boo";
addlistener(deleget {run(b);})
}

void run(string b)
{

}
这样就可以添加参数了呀。。。
[发帖际遇]: vison 乐于助人,奖励 1 蛮牛币. 幸运榜 / 衰神榜

回复

使用道具 举报

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

本版积分规则

关闭

站长推荐 上一条 /1 下一条

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