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

扫一扫,访问微社区

问答求助

关注:467

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

_____________________________________________________________________________________________________________
问答求助版块规则:

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

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

[复制链接]  [移动端链接]
4四处流浪
413/500
排名
4969
昨日变化
1

10

主题

60

帖子

413

积分

Rank: 4

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

本帖被以下淘专辑推荐:


回复

使用道具 举报

5熟悉之中
664/1000
排名
12010
昨日变化
10

23

主题

262

帖子

664

积分

Rank: 5Rank: 5

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

回复

使用道具 举报

4四处流浪
413/500
排名
4969
昨日变化
1

10

主题

60

帖子

413

积分

Rank: 4

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

回复

使用道具 举报

9以坛为家
17005/50000
排名
1203
昨日变化
5

82

主题

1万

帖子

1万

积分

Rank: 9Rank: 9Rank: 9

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

回复

使用道具 举报

4四处流浪
413/500
排名
4969
昨日变化
1

10

主题

60

帖子

413

积分

Rank: 4

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

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

回复

使用道具 举报

9以坛为家
17005/50000
排名
1203
昨日变化
5

82

主题

1万

帖子

1万

积分

Rank: 9Rank: 9Rank: 9

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

回复

使用道具 举报

7日久生情
1898/5000
排名
894
昨日变化
1

2

主题

140

帖子

1898

积分

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

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

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

回复

使用道具 举报

排名
21513
昨日变化
27

21

主题

106

帖子

346

积分

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

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

正解!!!!!!!

回复

使用道具 举报

4四处流浪
413/500
排名
4969
昨日变化
1

10

主题

60

帖子

413

积分

Rank: 4

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

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

回复

使用道具 举报

9以坛为家
17005/50000
排名
1203
昨日变化
5

82

主题

1万

帖子

1万

积分

Rank: 9Rank: 9Rank: 9

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

不错,很厉害哦

回复

使用道具 举报

5熟悉之中
535/1000
排名
4085
昨日变化
1

4

主题

73

帖子

535

积分

Rank: 5Rank: 5

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

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

回复

使用道具 举报

5熟悉之中
965/1000
排名
2162
昨日变化
3

0

主题

98

帖子

965

积分

Rank: 5Rank: 5

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

回复

使用道具 举报

6蛮牛粉丝
1195/1500
排名
3362
昨日变化
1

6

主题

549

帖子

1195

积分

Rank: 6Rank: 6Rank: 6

UID
83438
好友
2
蛮牛币
1875
威望
0
注册时间
2015-3-23
在线时间
302 小时
最后登录
2017-9-26

迈向小康

发表于 2017-5-19 09:23:12 | 显示全部楼层
为啥要加参数 在onclick里面要传不同数值吗? Eventtargs好像是这么写的话 好像能用

回复

使用道具 举报

6蛮牛粉丝
1114/1500
排名
1851
昨日变化
8

0

主题

129

帖子

1114

积分

Rank: 6Rank: 6Rank: 6

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

public void Fun(int ID)
{

}
		

回复

使用道具 举报

7日久生情
2932/5000
排名
250
昨日变化

0

主题

578

帖子

2932

积分

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

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

void run(string b)
{

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

回复

使用道具 举报

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

本版积分规则

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