日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

iOS发展- 文件共享(使用iTunes导入文件, 并显示现有文件)

發(fā)布時(shí)間:2025/3/15 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 iOS发展- 文件共享(使用iTunes导入文件, 并显示现有文件) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

到今天實(shí)現(xiàn)功能, 由iTunes導(dǎo)入文件的應(yīng)用程序, 并在此文檔進(jìn)行編輯的應(yīng)用。

就像我們平時(shí)經(jīng)常使用 PDF閱讀這樣的事情, 們能夠自己導(dǎo)入我們的電子書(shū)。


源代碼下載:https://github.com/colin1994/iTunesTest.git

以下詳細(xì)介紹下實(shí)現(xiàn)過(guò)程。

先看效果圖。

圖1. 未實(shí)現(xiàn)功能前, iTunes截圖



圖2. 實(shí)現(xiàn)功能后, iTunes截圖


圖3. 實(shí)現(xiàn)功能后, 執(zhí)行截圖。



好了, 通過(guò)圖片, 我們能夠看到實(shí)現(xiàn)的效果。

功能包括: 同意通過(guò)iTunes導(dǎo)入文件。

能夠查看沙盒下全部文件。


實(shí)現(xiàn)過(guò)程:

1。

在應(yīng)用程序的Info.plist文件里加入U(xiǎn)IFileSharingEnabled鍵,并將鍵值設(shè)置為YES。



2。詳細(xì)代碼:

ViewController.h

// // ViewController.h // iTunesTest // // Created by Colin on 14-6-8. // Copyright (c) 2014年 icephone. All rights reserved. //#import <UIKit/UIKit.h>//step1. 導(dǎo)入QuickLook庫(kù)和頭文件 #import <QuickLook/QuickLook.h>//step2. 繼承協(xié)議 @interface ViewController : UIViewController<UITableViewDataSource,UITableViewDelegate,QLPreviewControllerDataSource,QLPreviewControllerDelegate,UIDocumentInteractionControllerDelegate> {//step3. 聲明顯示列表IBOutlet UITableView *readTable; }//setp4. 聲明變量 //UIDocumentInteractionController : 一個(gè)文件交互控制器,提供應(yīng)用程序管理與本地系統(tǒng)中的文件的用戶(hù)交互的支持 //dirArray : 存儲(chǔ)沙盒子里面的全部文件 @property(nonatomic,retain) NSMutableArray *dirArray; @property (nonatomic, strong) UIDocumentInteractionController *docInteractionController; @end
ViewController.m

// // ViewController.m // iTunesTest // // Created by Colin on 14-6-8. // Copyright (c) 2014年 icephone. All rights reserved. //#import "ViewController.h"@interface ViewController ()@end@implementation ViewController @synthesize dirArray; @synthesize docInteractionController;- (void)viewDidLoad {[super viewDidLoad];//step5. 保存一張圖片到設(shè)備document目錄中(為了測(cè)試方便)UIImage *image = [UIImage imageNamed:@"testPic.jpg"];NSData *jpgData = UIImageJPEGRepresentation(image, 0.8);NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);NSString *documentsPath = [paths objectAtIndex:0]; //Get the docs directoryNSString *filePath = [documentsPath stringByAppendingPathComponent:@"testPic.jpg"]; //Add the file name[jpgData writeToFile:filePath atomically:YES]; //Write the file//step5. 保存一份txt文件到設(shè)備document目錄中(為了測(cè)試方便)char *saves = "Colin_csdn";NSData *data = [[NSData alloc] initWithBytes:saves length:10];filePath = [documentsPath stringByAppendingPathComponent:@"colin.txt"];[data writeToFile:filePath atomically:YES];//step6. 獲取沙盒里全部文件NSFileManager *fileManager = [NSFileManager defaultManager];//在這里獲取應(yīng)用程序Documents目錄里的文件及目錄列表NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);NSString *documentDir = [documentPaths objectAtIndex:0];NSError *error = nil;NSArray *fileList = [[NSArray alloc] init];//fileList便是包括有該目錄下全部文件的文件名稱(chēng)及目錄名的數(shù)組fileList = [fileManager contentsOfDirectoryAtPath:documentDir error:&error];self.dirArray = [[NSMutableArray alloc] init];for (NSString *file in fileList){[self.dirArray addObject:file];}//step6. 刷新列表, 顯示數(shù)據(jù)[readTable reloadData]; }//step7. 利用url路徑打開(kāi)UIDocumentInteractionController - (void)setupDocumentControllerWithURL:(NSURL *)url {if (self.docInteractionController == nil){self.docInteractionController = [UIDocumentInteractionController interactionControllerWithURL:url];self.docInteractionController.delegate = self;}else{self.docInteractionController.URL = url;} }#pragma mark- 列表操作 - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {return 1; }- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {static NSString *CellName = @"CellName";UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellName];if (cell == nil){cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellName];cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;}NSURL *fileURL= nil;NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);NSString *documentDir = [documentPaths objectAtIndex:0];NSString *path = [documentDir stringByAppendingPathComponent:[self.dirArray objectAtIndex:indexPath.row]];fileURL = [NSURL fileURLWithPath:path];[self setupDocumentControllerWithURL:fileURL];cell.textLabel.text = [self.dirArray objectAtIndex:indexPath.row];NSInteger iconCount = [self.docInteractionController.icons count];if (iconCount > 0){cell.imageView.image = [self.docInteractionController.icons objectAtIndex:iconCount - 1];}return cell; }- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {return [self.dirArray count]; }- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {QLPreviewController *previewController = [[QLPreviewController alloc] init];previewController.dataSource = self;previewController.delegate = self;// start previewing the document at the current section indexpreviewController.currentPreviewItemIndex = indexPath.row;[[self navigationController] pushViewController:previewController animated:YES];// [self presentViewController:previewController animated:YES completion:nil]; }#pragma mark - UIDocumentInteractionControllerDelegate- (NSString *)applicationDocumentsDirectory {return [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject]; }- (UIViewController *)documentInteractionControllerViewControllerForPreview:(UIDocumentInteractionController *)interactionController {return self; }#pragma mark - QLPreviewControllerDataSource// Returns the number of items that the preview controller should preview - (NSInteger)numberOfPreviewItemsInPreviewController:(QLPreviewController *)previewController {return 1; }- (void)previewControllerDidDismiss:(QLPreviewController *)controller {// if the preview dismissed (done button touched), use this method to post-process previews }// returns the item that the preview controller should preview - (id)previewController:(QLPreviewController *)previewController previewItemAtIndex:(NSInteger)idx {NSURL *fileURL = nil;NSIndexPath *selectedIndexPath = [readTable indexPathForSelectedRow];NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);NSString *documentDir = [documentPaths objectAtIndex:0];NSString *path = [documentDir stringByAppendingPathComponent:[self.dirArray objectAtIndex:selectedIndexPath.row]];fileURL = [NSURL fileURLWithPath:path];return fileURL; }- (void)didReceiveMemoryWarning {[super didReceiveMemoryWarning];// Dispose of any resources that can be recreated. }@end

版權(quán)聲明:本文博客原創(chuàng)文章,博客,未經(jīng)同意,不得轉(zhuǎn)載。

轉(zhuǎn)載于:https://www.cnblogs.com/bhlsheji/p/4651282.html

與50位技術(shù)專(zhuān)家面對(duì)面20年技術(shù)見(jiàn)證,附贈(zèng)技術(shù)全景圖

總結(jié)

以上是生活随笔為你收集整理的iOS发展- 文件共享(使用iTunes导入文件, 并显示现有文件)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲区精品 | 国产va视频| 在线免费播放 | 日本一区二区三区在线看 | 久久精品国产亚洲av久一一区 | 成人免费视频视频 | 日日干夜夜爽 | 欧美不卡一区二区三区 | 国产叼嘿视频在线观看 | 麻豆成人av| 白白色免费视频 | 色一情一伦一子一伦一区 | 亚洲一级一级 | 国外av网站| 国产卡一卡二 | 鲁在线视频 | 亚洲欧美日韩在线 | 日本性高潮视频 | 国产精品免费电影 | 鲁啊鲁在线视频 | 神马午夜国产 | 偷自在线| 久久午夜电影 | 国产成人一区 | 欧洲一区二区 | 日本丰满肉感bbwbbwbbw | 今天高清视频在线观看视频 | 亚洲色图校园春色 | 国产精品一区二区黑人巨大 | 噜噜色成人 | 天天鲁一鲁摸一摸爽一爽 | 日韩一级色片 | 亚洲国产精品成人久久蜜臀 | 台湾佬美性中文娱乐网 | 一色道久久88加勒比一 | 黄色免费视频观看 | 婷婷激情四射 | 亚洲精品国产精品乱码在线观看 | 波多野结衣一二三区 | 国产极品在线观看 | 国产精品久久久久久免费 | 亚洲成年人在线观看 | 污网站免费观看 | 免费一级全黄少妇性色生活片 | 熟女少妇一区二区三区 | 老公吃小头头视频免费观看 | 欧美xxxx性xxxxx高清 | 可以直接看的毛片 | av中文在线| 人人爽人人干 | 大地资源二中文在线影视免费观看 | 一级黄色淫片 | 人人干人人干 | 日韩毛片视频 | 亚洲精品白浆 | 色婷婷成人 | 天堂在线中文资源 | 另类激情亚洲 | 欧美性受xxx | 成人综合婷婷国产精品久久 | 日韩av不卡在线播放 | 日韩一区二区三区视频在线观看 | 性色生活片 | 亚洲人体一区 | 欧美视频一区二区在线观看 | 婷婷国产 | av这里只有精品 | 深夜国产福利 | 黑人巨大精品欧美一区二区免费 | 男女国产视频 | av大帝在线| 好男人www社区 | 姑娘第5集在线观看免费 | www.麻豆av.com | 一区视频免费观看 | 精品人妻无码一区 | 成人手机在线视频 | av资源站最新av | 欧美色资源 | 亚洲永久精品一区 | www国产91| 91嫩草在线 | 婷婷操| 综合久久网 | 爱的色放在线 | 韩毛片 | 色欲人妻综合网 | 免费看污片的网站 | 男女激情四射网站 | 熟妇一区二区三区 | 摸丰满大乳奶水www免费 | 亚洲25p| 久草香蕉视频 | 免费极品av一视觉盛宴 | 日韩二区三区四区 | 国产精品一区二区三区四 | 欧美成人免费播放 | 97干干| 亚洲七区|