あと、
「…」のアイコンはWindows OSではよく使われ
Systemに定義されてますが、
iOSではSystemに定義されていません。
「…」じゃないとiPhoneアプリらしくないという苦情を
いただいたのですが「…」のほうが
iPhoneアプリらしくないです。(^^;..
TouchJW v2.8.2 for iOSリリースされました。
iOSファイルアプリからTouchJWが起動できます。他のファイルアプリに連携するクラウドサービスがあれば、DropboxやOneDrive以外のクラウドのファイルにアクセスできます。
また、ファイルアプリに連携するクラウドサービスから一気にファイルを転送したりすることができます。ファイルアプリでファイルを選択、ファイルアプリ内のTouchJW v2領域にコピーします。
Google Drive ,BoxやOneDrive Businessなどのクラウドサービスからファイルを複数一気に転送できます。
また、iPhoneXにも対応!!
TouchJW v2.8.2 for iOSです。、
先ほどSubmitが完了しました、
v2.8.2
1)iOS11より実装された「ファイル」アプリに対応しました。
「ファイル」アプリの機能により、他アプリやクラウドアプリからの複数ファイルの転送が可能になります。
2)ファイルサイズが大きい場合動作が遅くなるとメッセージを表示するようにした。
3)ファイル操作の細かなバグを修正した。
http://soft.anshu.biz/TouchJW_v2/4thAnn.html
TouchJW for iOS リリース4周年(^^)
皆様のご愛顧に感謝します。
これからも、新しい風に吹かれて機能強化をしていきます。
iPhoneX対応作業中に XCode9でつまづいた。tableViewのcanEditRowAtIndexPathをいじっているとこけるようになった。
こけるコード、
- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath { NSString *object = _objects[indexPath.row]; switch(DirSelMode) { case 0: if([object isEqualToString:@"Inbox"]||[object isEqualToString:@".DS_Store"]||[object isEqualToString:@".DS_Store_"]||[object isEqualToString:@"..DS_Store"]||[object isEqualToString:@".|.//OneDrive"]||[object isEqualToString:@".|.//DropBox"]) { return NO; } else { return YES; } return YES; break; case 1: return NO; break; case 2: return NO; break; } return NO; }
これで走ると
- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath { switch(DirSelMode) { case 0: { NSString *object = _objects[indexPath.row]; if([object isEqualToString:@"Inbox"]||[object isEqualToString:@".DS_Store"]||[object isEqualToString:@".DS_Store_"]||[object isEqualToString:@"..DS_Store"]||[object isEqualToString:@".|.//OneDrive"]||[object isEqualToString:@".|.//DropBox"]) { return NO; } else { return YES; } } return YES; break; case 1: return NO; break; case 2: return NO; break; } return NO; }
どっちも一緒かと思いますが、うまくいくコードの方が最適化されていますわな。使わないコードは、やはりしまっておくと。
LiveSDK for iOSの頃は良かった!嘆いていますが、
OneDrive-SDK for iOSのドキュメントのなさで毎日くじけかけています。
ってなことで、ここ数日の成果を一挙に(^^;…
ファイルのUploadの時に「上書き」か「リネーム」か?
こんな感じ
ODItemContentRequest *contentRequest = [[[[self.client drive] items:itemId] itemByPath:[FileName2 lastPathComponent]] contentRequestWithOptions: @[[ODNameConflict replace]] ]; [contentRequest uploadFromData:fileToUpload completion:^(ODItem *item, NSError *error){ dispatch_async(dispatch_get_main_queue(), ^(){ // NSLog(@"Async OK"); [self My_userInteractionEnabled:YES]; }); }];
ということで、contentRequestWithOptions を使うことで可能だった。
contentRequestWithOptions: @[[ODNameConflict replace]]
contentRequestWithOptions: @[[ODNameConflict rename]]
これでOK ちなみに昔(LiveSDK)はこれで良かった。
LiveUploadOverwriteOption OWOpt; if(shdoR.OneDriveOverWrite) { OWOpt=LiveUploadOverwrite; } else { OWOpt=LiveUploadRename; } [self.liveClient uploadToPath:sdLink fileName:FileName2 data:fileToUpload overwrite:OWOpt delegate:self userState:@"uploadStream2"];