2011-08-28 92 views
0

我正在使用Leaves項目在我的iphone項目中顯示我的PDF,但我遇到了問題,當我試圖從文檔中顯示PDF時,並非來自捆綁包..我認爲這是簡單,但有一招我不能讓因爲我不是在PDF閱讀:)iphone sdk - 從文檔目錄中加載PDF

我使用下面的代碼

-(void) viewWillAppear:(BOOL)animated{ 
NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *documentDir = [documentPaths objectAtIndex:0]; 
pListPath = [ documentDir stringByAppendingPathComponent:[NSString stringWithFormat:@"%@",self.fileName]]; 


CFURLRef pdfURL = (CFURLRef)[NSURL fileURLWithPath:pListPath];  


// CFURLRef pdfURL = CFBundleCopyResourceURL(CFBundleGetMainBundle(), CFSTR("fekhElSunaI.pdf"), NULL, NULL); 

pdf = CGPDFDocumentCreateWithURL((CFURLRef)pdfURL); 
NSLog(@"%@",pListPath); 

// CFRelease(pdfURL); 

    [self init]; 
} 

你會發現,我已經把代碼大師在viewWillAppear不在初始化,因爲葉做.. pdf不出現,也沒有初始化 我已經使用了這個解決方案LINK並沒有工作,要麼

所以這裏任何一個有東西幫我:)

+1

有什麼問題或問題?你說你有問題。它不顯示?你有錯誤嗎? – bryanmac

+0

是啊,它並沒有顯示,儘管它得到的頁數,我爲什麼懷疑代碼的位置有問題 –

回答

0

你已經把viewWillAppear中的代碼,這可能是你的問題。在其他地方,代碼可能會假定代碼已被調用,並且PDF已經存在。嘗試將它放入init中,並看看會發生什麼。 viewWillAppear可能會被多次調用。

0

使用此代碼

- (id)init { 
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
    NSString *documentsDirectory = [paths objectAtIndex:0]; 

    myPathDocs = [documentsDirectory stringByAppendingPathComponent:@"abc.pdf"]; 
    pdfURL = (CFURLRef)[NSURL fileURLWithPath:myPathDocs];  
    NSLog(@"myString %@",myPathDocs); 

    pdf = CGPDFDocumentCreateWithURL((CFURLRef)pdfURL);  //  } 

    size_t pageCount = CGPDFDocumentGetNumberOfPages(pdf); 
} 

您Leavies查看init功能