FBProfilePictureView对象不会显示图像
即时通讯做的3.1 iOS SDK的scrumptios facebook开发者教程。 我设法从Facebook显示我的个人资料名称,但FBProfilePictureView不会显示图片
inheritanceiboutlet的代码
@property (strong, nonatomic) IBOutlet FBProfilePictureView *useProfileImage;
这是我用来显示图片
self.useProfileImage.profileID = user.id;
我已经确认它通过在标签中显示来改变图像的profileidvariables。
当我第一次运行项目时,我有这个错误
“2012-05-18 04:04:11.620美味[6548:f803] Interface Builder文件中的未知类FBProfilePictureView”。
并通过添加[FBProfilePictureView class];
方式解决了这个问题[FBProfilePictureView class];
到应用程序委托中的“applicationdidfinishlaunching:withoptions”。
任何想法为什么图片不会显示?
链接到教程
添加[FBProfilePictureView class];
作为didFinishLaunching的应用程序委托方法的第一行似乎有点hacky对我来说。
查看SDK中的HelloFacebookSample。 这是4行评论:
// If you have not added the -ObjC linker flag, you may need to uncomment the following line because // Nib files require the type to have been loaded before they can do the wireup successfully. // http://stackoverflow.com/questions/1725881/unknown-class-myclass-in-interface-builder-file-error-at-runtime // [FBProfilePictureView class];
我试着添加-ObjC
标志,它工作正常。
要解决这个问题,请将其添加为应用程序委托的应用程序的第一行:didFinishLaunchingWithOptions:method:
[FBProfilePictureView类];
正如在facebook网页中所logging的,您需要放置[FBProfilePictureView类]; 作为didFinishLaunching的应用委托方法的第一行。 (注意他们的示例代码没有这个,但仍然有效,在我的情况下,没有它,它将无法正常工作。
我创build了一个UIView对象,然后select从UIView到FBProfilePictureView的类。 这将断开您的程序和IB之间的任何连接,因此您需要重新连接,无法看到图片的错误是由于对象没有连接到IBOutlet项目。 我不知道如果剪切和粘贴将工作,也许会,但我从UIView创build对象,只是通过IB手动改变类。
没有[FBProfilePictureView类]; 它会给你一个错误。
如果正确完成,如果您查看XIB – 在对象窗口/列表中,您应该看到“configuration文件图片视图”以及button和标签,而不是FBProfilePictureView。 从Facebook的个人资料图片应该显示。
我也有同样的问题。 我的解决scheme是取消选中xib文件的“文件检查器”中的“使用自动布局”选项。 要打开“文件检查器”,请在打开xib文件后按cmd +选项+ 1。
编辑1 :只需find另一个解决scheme。
尝试设置宽度约束和高度约束到configuration文件图片视图。 我觉得这个教程很有用。
我有同样的问题,xcode4.5.1 ios6。 要解决这个问题:在IB取消选中使用自动布局FBprofilepictureview,也取消select“autoresize子视图”到视图
他们(fb开发者论坛)说粘贴在你的应用程序委托didLunch方法就是这样
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; [FBProfilePictureView class]; // Create a LoginUIViewController instance where the login button will be LoginUIViewController *loginUIViewController = [[LoginUIViewController alloc] init]; // Set loginUIViewController as root view controller [[self window] setRootViewController:loginUIViewController]; self.window.backgroundColor = [UIColor whiteColor]; [self.window makeKeyAndVisible]; return YES; }
只是取代
[FBProfilePictureView class]; with these commented lines it will work // Override point for customization after application launch. // Load the FBProfilePictureView // You can find more information about why you need to add this line of code in our troubleshooting guide // https://developers.facebook.com/docs/ios/troubleshooting#objc [FBProfilePictureView class];
它会奇迹般地工作:)
使用类别扩展现有类的类不会自动加载。 在Xcode界面构build器中使用的类不会自动加载,例如,通过在.xib文件中绘制一个视图,然后将FBLoginView从界面生成器UI中分类,将FBLoginView添加到界面中。
class
有助于创build一个指向FBProfilePictureView的指针。
- 安全 – 思科IOS和“重新加载”命令
- 用.mobileprovision文件提供xcodebuild
- 错误ITMS-90174:“缺less供应configuration文件 – iOS应用程序必须在名为embedded.mobileprovision的文件中包含供应configuration文件。
- 如何找出坐标之间的距离?
- XCode:无法启动“APP_X_Y” – “A”数据包返回错误:-1
- 我有iOS 10 TSL问题(“安全错误:-9801”)。 怎么修?
- 构build设置使用UUID指定供应configuration文件
- 返回从块内部设置的NSString
- 了解证书,代码签名,configuration和相关主题的资源(Apple除外)是什么?