[英]PFObject Subclass Not Loading Objective-C
我在使用PFObject
子類時遇到了一些麻煩。 我已經進行了所有適當的設置(在委托中注冊子類,設置類名稱等)。 但是由於某種原因,我無法加載該對象而不會在應該加載的視圖中將其崩潰。
傳遞物體
if ([segue.identifier isEqualToString:@"toPostView"])
{
pbPostViewController *postView = [pbPostViewController new];
postView = (pbPostViewController *)segue.destinationViewController;
[postView setPostToLoad:_selectedPost];
}
接收View.h
// Copyright (c) 2015 Chris Culos. All rights reserved.
//
#import <UIKit/UIKit.h>
#import <Parse/Parse.h>
#import "PALongTextView.h"
#import "pbPost.h"
@interface pbPostViewController : UIViewController
@property (strong, nonatomic) pbPost *postToLoad;
接收View.m
#import "pbPost.h"
@interface pbPostViewController ()
@end
@implementation pbPostViewController
- (void)viewDidLoad {
pbPost *post = [pbPost postWithObject:_objectToLoad];
NSLog(@"post: %@", post);
// _timeStampLabel.text = post.postTimeStamp;
_userNameLabel.text = [post.postOwner valueForKey:@"username"];
_profileImage.image = [post.postOwner valueForKey:@"profileImage"];
_postDescriptionView.text = post.postDescriptionString;
_bookmarkCounterLabel.text= [NSString stringWithFormat:@"%li bookmarks", post.postBookmarkedArray.count];
_postContentView.text = @"POST CONTENT PAGE 123 456 ETC ETC ETC";
[super viewDidLoad];
//
pbPost.h
@interface pbPost : PFObject <PFSubclassing>
{
}
@property (nonatomic, retain) NSDate *postTimeStamp;
@property (nonatomic, retain) NSString *postDescriptionString;
@property (nonatomic, retain) NSString *postContentString;
@property (nonatomic, retain) NSString *postBookmarkString;
@property (nonatomic, retain) NSString *postPageCounterString;
@property (nonatomic, retain) NSArray *postBookmarkedArray;
@property (nonatomic, retain) PFFile *postOwnerProfileImage;
@property (nonatomic, retain) NSNumber *postFontSize, *totalPages;
@property (nonatomic, retain) PFUser *postOwner;
+ (pbPost *) postWithObject: (PFObject *)object;
郵局
@implementation pbPost
@dynamic postContentString, postBookmarkString, postDescriptionString, postPageCounterString, postTimeStamp, commentTableView, commentButton, bookMarkButton, postOwnerProfileImage, optionsButton, postFontSize, totalPages, postBookmarkedArray, postOwner;
+ (void)load
{
[self registerSubclass];
}
+ (NSString *)parseClassName
{
return @"userPosts";
}
+ (pbPost *) postWithObject: (PFObject *)object
{
// NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
// [dateFormat setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"];
// [dateFormat setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"UTC"]];
pbPost *post = [pbPost postWithObject:object];
[post fetchInBackgroundWithBlock:^(PFObject *object, NSError *error) {
if (!error) {
post.postTimeStamp = [object valueForKey:@"createdAt"];
post.postDescriptionString = [object valueForKey:@"titleSummary"];
post.postFontSize = [object valueForKey:@"fontSize"];
post.postContentString = [object valueForKey:@"postContent"];
post.totalPages = [object valueForKey:@"numPages"];
post.postBookmarkedArray = [object valueForKey:@"bookmarkedBy"];
post.postOwner = [object valueForKey:@"postOwner"];
post.postOwnerProfileImage = [post.postOwner valueForKey:@"profileImage"];
NSLog(@"LOAD THE THING!: %@", post);
}
else
{
NSLog(@"Error Loading Post: %@", error);
}
}];
return post;
}
在這種情況下; 我得到一個EXC_BAD_ACCESS
在+ (pbPost *)postWithObject:(PFObject *)object
在實現文件。
我覺得這里缺少一些非常簡單的東西; 會是什么 在此先感謝大家的幫助! 這讓我難過了一陣子,我需要一些外部幫助。
由於要傳遞pbPost對象,因此根本不需要調用+ (pbPost *)postWithObject:(PFObject *)object
。 要創建PFObject子類的新實例,只需調用:
pbPost *post = [pbPost object];
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.