为了在我的 ios 应用程序中连接到 facebook,我使用来自 Facebook SDK for iOS 的 FBLoginVIew .
它显示了一个漂亮的 FB 登录按钮,但我想使用我自己的图像和文本作为登录按钮。 问题是我在任何地方都看不到如何自定义它。
我已经设法通过覆盖 FacebookSDKResources.bundle/FBLoginView/images 中的图像来更改登录按钮背景图像,但我找不到更改登录按钮文本和位置的位置,因此它保持“登录” ...
解决方案,有人吗?
谢谢
最佳答案
答案是遍历 FBLoginView subview ,找到按钮和标签并自定义它们。
代码如下:
FBLoginView *loginview =
[[FBLoginView alloc] initWithPermissions:[NSArray arrayWithObject:@"publish_actions"]];
loginview.frame = CGRectMake(4, 95, 271, 37);
for (id obj in loginview.subviews)
{
if ([obj isKindOfClass:[UIButton class]])
{
UIButton * loginButton = obj;
UIImage *loginImage = [UIImage imageNamed:@"YourImg.png"];
[loginButton setBackgroundImage:loginImage forState:UIControlStateNormal];
[loginButton setBackgroundImage:nil forState:UIControlStateSelected];
[loginButton setBackgroundImage:nil forState:UIControlStateHighlighted];
[loginButton sizeToFit];
}
if ([obj isKindOfClass:[UILabel class]])
{
UILabel * loginLabel = obj;
loginLabel.text = @"Log in to facebook";
loginLabel.textAlignment = UITextAlignmentCenter;
loginLabel.frame = CGRectMake(0, 0, 271, 37);
}
}
loginview.delegate = self;
[self.view addSubview:loginview];
关于objective-c - 如何自定义FBLoginVIew?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12280850/