2013-09-19 1 views
3

Я супер новичок в разработке XCode и App. В настоящее время я загружаю веб-приложение в uiwebviews на iPad. Когда загружается одна конкретная страница, отображается файл pdf. Я хочу, чтобы иметь возможность распечатать этот pdf-файл с помощью AirPrint. Я ищу простое решение. В настоящее время приложение, над которым я работаю, имеет 6 файлов, которые он использует.iOS, позволяющий AirPrint для содержимого uiwebview

-ViewController.m 
-ViewController.h 
-MainStoryboard_iPad.storyboard 
-MainStoryboard_iPhone.storyboard 
-AppDelegate.h 
-AppDelegate.m 

В файлах MainStoryboard есть много окон (графических), которые нравятся центральной навигационной системе. Если можно потратить некоторое время, чтобы действительно объяснить, что мне нужно сделать, а не «взглянуть на эту ссылку». У меня есть опыт программирования, но никогда с XCode или каким-либо продуктом, связанным с Apple.

ответ

6

Я понял, как это сделать. Сначала я нашел фрагмент кода, iOS Air print for UIwebview, я понятия не имел, как реализовать это в то время, но затем я сделал следующее.

Мое приложение было единое представление Xcode проекту

В моей раскадровки я вставил кнопку (на моей панели навигации) и изменил свой идентификатор в «Action», затем, убедившись в том, чтобы иметь «смокинг» редактор view open, показывая мой файл ViewController.m, я щелкнул его и перетащил из кнопки в файл ViewController.m, удерживая нажатой клавишу. Это вставило мой метод IBAction после запроса идентификатора кнопок.

myActionButton

Затем я скопирована в коде, указанном в ответ 3 вопроса. Мой ViewController.m посмотрел что-то связанное с этим.

#import "ViewController.h" 
@interface ViewController() 
@end 

@implementation ViewController() 
//Some stuff here 
@end 

@synthesize webView 

-(IBAction)myActionButton:(id)sender{ 
UIPrintInfo *pi = [UIPrintInfo printInfo]; 
pi.outputType = UIPrintInfoOutputGeneral; 
pi.jobName = webView.request.URL.absoluteString; 
pi.orientation = UIPrintInfoOrientationPortrait; 
pi.duplex = UIPrintInfoDuplexLongEdge; 

UIPrintInteractionController *pic = [UIPrintInteractionController sharedPrintController]; 
pic.printInfo = pi; 
pic.showsPageRange = YES; 
pic.printFormatter = webView.viewPrintFormatter; 
[pic presentAnimated:YES completionHandler:^(UIPrintInteractionController *pic2, BOOL completed, NSError *error) { 
    // indicate done or error 
}]; 
} 

Кроме того, в моем файле ViewController.h

#import ... 
@interface ViewController : ... 
{ 
IBOutlet UIWebView *webView 
} 

@property (nonatomic,retain) IBOutlet UIWebView *webView 
@end 

я не установки в webviews, поэтому я не уверен на 100% о том, как они созданы, но есть хорошая серия для начинающих по youtube в HackLife87, который показывает, как сделать одно приложение просмотра. Я думаю, что XCode Tutorial Video # 7 включает в себя настройку представлений.

Поскольку я очень зелёный для разработки приложений XCode и IPad, мне удалось решить мою проблему, объединив знания в просмотре вышеупомянутых видеороликов XCode и затем реализовав решение, предоставленное в stackoverflow, на Hafthor.