Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование iOS/iPhone
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
Slava-hacker32
7 / 7 / 2
Регистрация: 16.11.2011
Сообщений: 251
1

Файловый менеджер открытие нужного контроллера

30.04.2014, 01:39. Просмотров 642. Ответов 6
Метки нет (Все метки)

Здравствуйте, в целях изучения делаю проект файловый менеджер. Есть разные типы файлов (документы, pdf, картинки). Все файлы выводятся в TableView, папки открываются, а вот как теперь мне открыть файлы? Как отобразить нужный контроллер? Например для документов открывается контроллер с WebView, а для картинок с ImageView. Как я понял, контроллеры должны бить заранее созданы, но как их привязать? Через сегвеи, а потом проверять расширение файла и переходить по нужному сегвею?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.04.2014, 01:39
Ответы с готовыми решениями:

Файловый менеджер для ios
Здравствуйте. В связи с дипломом возникла задача написать мобильное приложение,...

Открытие второго контроллера после удачного POST запроса
При старте программы у меня открывается loginWindowController, там я ввожу...

Файловый менеджер на Си
Ребят помогите реализовать вот с такими функциями Набор функций: create,...

Файловый менеджер
Как сделать, чтобы при любой операции (копирование, удаление и т.д.) в файловом...

Файловый менеджер
Помогите пожалуйста с домашним заданием. Задали сделать файловый менеджер вот...

6
zulkis
684 / 611 / 43
Регистрация: 13.01.2011
Сообщений: 1,724
30.04.2014, 07:06 2
Slava-hacker32,
Цитата Сообщение от Slava-hacker32 Посмотреть сообщение
Через сегвеи, а потом проверять расширение файла и переходить по нужному сегвею?
Как вариант, да.
0
Slava-hacker32
7 / 7 / 2
Регистрация: 16.11.2011
Сообщений: 251
30.04.2014, 09:35  [ТС] 3
А как в коде это написать? Проверку расширения файла я могу сделать, а как прописать переход?

Objective-C
1
2
NSString* extensionPath = [fileName pathExtension];
if ([extensionPath isEqualToString:@"doc"]) { } //проверка расширения файла
0
zulkis
684 / 611 / 43
Регистрация: 13.01.2011
Сообщений: 1,724
30.04.2014, 09:57 4
Slava-hacker32,
смотрите метод
Objective-C
1
- (void)performSegueWithIdentifier:(NSString *)identifier sender:(id)sender;
0
Slava-hacker32
7 / 7 / 2
Регистрация: 16.11.2011
Сообщений: 251
01.05.2014, 23:41  [ТС] 5
Я понимаю, что переход происходит в performSegueWithIdentifier, но от одной ячейки можно сделать только один Segue.
В коде я делаю проверку файл или папка выбраны.
Objective-C
1
2
3
4
5
6
if ([self isDirectoryAtIndexPath:indexPath]) {
        
        
        self.selectedPath = path;
        [self performSegueWithIdentifier:@"openFolder" sender:nil];
    }
Если папка, то используется тот же контроллер, для отображения содержимого папок.
Objective-C
1
2
3
4
5
-(void)prepareForSegue:(UIStoryboardSegue *)segue  sender:(id)sender {
  
 
        RSMasterViewController* mvctrlr = segue.destinationViewController;
        mvctrlr.path = self.selectedPath; }
А во как работать с файлами я не могу придумать. Если начинаю дописывать условие к if ([self isDirectoryAtIndexPath:indexPath]) то есть else , приложение вылетает (это если я не делал seque от ячейки ко второму контроллеру), а если seque есть, то он перехватывает проверку папка/файл и тогда вместо содержимого папки отображается контроллер (для файлов тоже), может я что то не то делаю? И как тогда делать проверку, какой контроллер открывать в зависимости от типа файла?
0
zulkis
684 / 611 / 43
Регистрация: 13.01.2011
Сообщений: 1,724
02.05.2014, 12:44 6
Slava-hacker32, Добавляйте manual segue не от UITableViewCell, а от контроллера. Их может быть много. И вызов performSegueWithIdentifier... от self(UIViewController) будет вполне корректен.
1
noname_club
107 / 98 / 12
Регистрация: 01.05.2013
Сообщений: 603
03.05.2014, 17:53 7
segue
через tableDidSelectRow и [Storyboard instantiateViewControllerWithIdentifier:@"name"] -> [self.navigationController pushViewController] не лучше?
0
03.05.2014, 17:53
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.05.2014, 17:53

Файловый менеджер
Скажите пожалуйста,как с помощью Windows Forms создать файловый менеджер?

Файловый менеджер
Доброго времени суток. Сейчас разбираюсь с файловым менеджером. Посмотрел...

Файловый менеджер
Пишу файловый менеджер, есть загвоздки: 1) Нужно организовать открытие...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru