从捆绑下载文件按钮点击
问题描述:
我正在一个应用程序中,我有一个应用程序包中的目录中的9个pdf文件,我想按下按钮下载文件。简要信息我想实现 - 如果我在文本字段中输入任意2位数字并单击提交,逻辑将2位数字的值添加为单值(1-9),如果2位数字的输出为1数字会切换大小写,并在textview上显示输出pdf文件,在textview下面有一个保存按钮,我如何下载保存按钮单击的pdf文件。 “从捆绑下载文件按钮点击
(IBAction)btnc:(id)sender { if([_textfield.text intValue]>31 &&[_textfield.text intValue]>0)
{
UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"WARNING" message:@"Please Enter Correct Details." preferredStyle:UIAlertControllerStyleAlert];
[self presentViewController:alert animated:YES completion:nil];
UIAlertAction* OK = [UIAlertAction actionWithTitle:@"OK" style:UIAlertActionStyleDefault handler:^(UIAlertAction * action)
{
}];
[alert addAction:OK];
}
else{
{
int sum, i ,j ;
sum=0;
sum= [_textfield.text intValue];
for(i=0;i<=10;i++)
{
j=sum%10;
sum=sum/10;
sum=sum+j;
}
for(i=0;i<=10;i++)
{
j=sum%10;
sum=sum/10;
sum=sum+j;
}
NSLog(@"%i",sum);
NSString *str = [NSString stringWithFormat:@"%d", sum];
self.lb.text = str;
switch(sum)
{
case 1 :
NSLog(@"1\n");
break;
case 2 :
NSLog(@"2\n");
break;
case 3 :
NSLog(@"3\n");
break;
case 4 :
NSLog(@"4\n");
break;
case 5 :
NSLog(@"5\n");
break;
case 6 :
NSLog(@"6\n");
break;
case 7 :
NSLog(@"7\n");
break;
case 8 :
NSLog(@"8");
break;
case 9 :
NSLog(@"9 \n");
break;
default :
NSLog(@"incorrect\n");
}
DescriptionViewController *face = [self.storyboard instantiateViewControllerWithIdentifier:@"Description"];
[face setStr:[self descriptionForSum:sum]];
[self.navigationController pushViewController:face animated:YES];
}
}}
- (NSString *)descriptionForSum:(int)sum{
NSString * returnedDescription = @"";
NSString *filePath = [[NSBundle mainBundle] pathForResource:[NSString stringWithFormat:@"me%d", sum] ofType:@"pdf" inDirectory:@"Text"];
NSData *myData = [NSData dataWithContentsOfFile:filePath];
if (myData) {
returnedDescription = [[NSString alloc] initWithData:myData encoding:NSUTF8StringEncoding];
return returnedDescription;
}
return returnedDescription; }
如果对1的输出保存按钮为图像中如果输出为2,则该文件将me2.pdf开始下载与me1.pdf pdf文件将开始下载用户点击。
答
您展示在QuickLook的框架工作PDF: 在保存按钮:
QLPreviewController *previewVC = [[QLPreviewController alloc] init];
previewVC.delegate = self;
previewVC.dataSource = self;
[self presentViewController:previewVC animated:YES completion:nil];
的Quicklook代表:
-(NSInteger)numberOfPreviewItemsInPreviewController:(QLPreviewController *)controller{
return 1;
}
-(id<QLPreviewItem>)previewController:(QLPreviewController *)controller previewItemAtIndex:(NSInteger)index{
@try {
NSURL *fileUrl = [NSURL fileURLWithPath:filePath];
return fileUrl;
} @catch (NSException *exception) {
NSLog(@"Error In Func:%s and line:%d with reason:%@",__func__,__LINE__,exception.reason);
}
}
在快速查看视图控制器中,您将显示用户可以共享PDF的共享图标。 更多参考:https://www.appcoda.com/quick-look-framework/,http://kratinmobile.com/blog/index.php/document-preview-in-ios-with-quick-look-framework/
如果你的包中的文件那么你为什么要下载?你想在PDF阅读器中显示文件PDF文件吗? –
@SaurabhJain我想将PDF保存在用户设备中,并希望将其分享。 – itsKamal
如果您将PDF保存在捆绑包中,则用户可以使用QuickLook框架共享此PDF –