如何检测 Facebook 喜欢按钮被点击?
How to detect Facebook like button being clicked?
我使用以下代码实现了一个 Facebook 点赞按钮:
FBLikeControl *like = [[FBLikeControl alloc] init];
like.objectID = @"1031992973496678";
[like setFrame:CGRectMake(0, 20, 100, 100)];
[[self view] addSubview:like];
我想让按钮在按下时消失,使用此代码:
[like removeFromSuperview];
我如何检测点赞按钮何时被按下?
编辑:我目前正在使用此代码检测何时按下赞按钮,但 NSLogs 和赞按钮的存在表明未使用选择器:
[like addTarget:self action:@selector(likePressed:) forControlEvents:UIControlEventValueChanged];
[[self view] addSubview:like];
- (void) likePressed:(id)sender {
NSLog(@"GG, like was pressed!");
[sender removeFromSuperview];
[likeText removeFromSuperview];
}
我试过用[like removeFromSuperview];
代替[sender removeFromSuperview];
,没用。
在此处查看 FBLikeControl
的文档:https://developers.facebook.com/docs/reference/ios/current/class/FBLikeControl
看来FBLikeControl
继承自UIControl
,通过UIControlEventValueChanged
事件发送信息。尝试为此事件添加一个侦听器,然后删除视图:
[likeControl addTarget:self action:@selector(likePressed:) forControlEvents:UIControlEventValueChanged];
// ... then later
-(void)likePressed:(id)sender {
[sender removeFromSuperview];
}
尝试将 UIControlEventValueChanged 更改为 UIControlEventTouchUpInside
我使用以下代码实现了一个 Facebook 点赞按钮:
FBLikeControl *like = [[FBLikeControl alloc] init];
like.objectID = @"1031992973496678";
[like setFrame:CGRectMake(0, 20, 100, 100)];
[[self view] addSubview:like];
我想让按钮在按下时消失,使用此代码:
[like removeFromSuperview];
我如何检测点赞按钮何时被按下?
编辑:我目前正在使用此代码检测何时按下赞按钮,但 NSLogs 和赞按钮的存在表明未使用选择器:
[like addTarget:self action:@selector(likePressed:) forControlEvents:UIControlEventValueChanged];
[[self view] addSubview:like];
- (void) likePressed:(id)sender {
NSLog(@"GG, like was pressed!");
[sender removeFromSuperview];
[likeText removeFromSuperview];
}
我试过用[like removeFromSuperview];
代替[sender removeFromSuperview];
,没用。
在此处查看 FBLikeControl
的文档:https://developers.facebook.com/docs/reference/ios/current/class/FBLikeControl
看来FBLikeControl
继承自UIControl
,通过UIControlEventValueChanged
事件发送信息。尝试为此事件添加一个侦听器,然后删除视图:
[likeControl addTarget:self action:@selector(likePressed:) forControlEvents:UIControlEventValueChanged];
// ... then later
-(void)likePressed:(id)sender {
[sender removeFromSuperview];
}
尝试将 UIControlEventValueChanged 更改为 UIControlEventTouchUpInside