0

次のように、Xcodeバンドルのファイルにアクセスして表示できます。

NSString *file = [[NSBundle mainBundle] pathForResource:@"1" ofType:@"pdf"];

今私がしたいのは、正しい名前を取得するこのJSONを使用してファイルの名前を入力することです。

self.localFileName = [BT_strings getJsonPropertyValue:self.screenData.jsonVars:@"localFileName":@""];

JSON名を使用してバンドルファイルを呼び出すことができるように、これら2つを組み合わせるにはどうすればよいですか?

これが全体です:

//
//  ReaderDemoController.m
//  PDFViewer
//
//  Created by C. A. Beninati on 5/21/12.
//  Copyright (c) 2012 __MyCompanyName__. All rights reserved.
//
//BT imports
#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>
#import <MediaPlayer/MediaPlayer.h>
#import "JSON.h"
#import "BT_strings.h"
#import "testapp_appDelegate.h"
#import "BT_fileManager.h"
#import "BT_color.h"
#import "BT_viewUtilities.h"
#import "BT_downloader.h"
#import "BT_item.h"
#import "BT_debugger.h"
#import "BT_viewControllerManager.h"

#import "ReaderDemoController.h"
#import "ReaderViewController.h"

@interface ReaderDemoController ()<ReaderViewControllerDelegate>

@end

@implementation ReaderDemoController
@synthesize localFileName;


- (void)viewDidLoad
{ [BT_debugger showIt:self:@"ZZZZZZZZZZ!!!"];
    [super viewDidLoad];

    self.localFileName = [BT_strings getJsonPropertyValue:self.screenData.jsonVars:@"localFileName":@""];

    self.localFileName = @""; // added this to make it work!!

    NSString *file=[[NSBundle mainBundle]pathForResource:self.localFileName ofType:@"pdf"];

    ReaderDocument *document = [ReaderDocument withDocumentFilePath:file password:nil];

    if (document != nil)
    {
        ReaderViewController *readerViewController = [[ReaderViewController alloc] initWithReaderDocument:document];
        readerViewController.delegate = self;

        readerViewController.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
        readerViewController.modalPresentationStyle = UIModalPresentationFullScreen;

        [self presentModalViewController:readerViewController animated:YES];
    }

}

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);
}




- (void)dismissReaderViewController:(ReaderViewController *)viewController {
    [self dismissModalViewControllerAnimated:YES];
}

@end
4

1 に答える 1

1

「self.localFilename」から正しいファイル名を取得している場合は、次のようにファイルに渡す以外に何もする必要はありません。

NSString * file = [[NSBundle mainBundle] pathForResource:self.localFileName ofType:@ "pdf"];

于 2013-02-19T09:13:46.807 に答える