![]() |
|
|
![]()
|
|
| cosamia |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 231 Регистрация: 11.5.2005 Репутация: нет Всего: нет |
Интересно возможно ли взяв UITableViewController в ручную уменьшить размер самого UITableView для тго чтобы поместить другой контрол?
пробовал это сделать, но размеры похоже идут как readonly и редактировать не дают Необходимость это сделать связанна с тем что возникло подозрение что после того как я на таблицу закинул searchbar (а этот контрол отдельно не ставится а только в сам table!) то при активации searchbar и появлении клавиатуры мастер становится черным У таблицы есть 2 варианта выбора св-ва - layout или frame - в чем разница не понятно но в обеих случаях ручное редактирование размера не позволяет... |
|||
|
||||
| Maksys |
|
|||
|
Future Splasher ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1289 Регистрация: 15.6.2005 Где: Екатеринбург Репутация: нет Всего: 17 |
А попробуйте, вставить UIView а уже в него положить Search bar и UITableView, а реализацию UITableViewController сделать свою, добавив в несущий ViewController делегаты для работы с TableView.
|
|||
|
||||
| Bitter |
|
|||
![]() Опытный лентяй ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1209 Регистрация: 15.8.2004 Где: Харьков, Ukraine Репутация: 10 Всего: 27 |
он не ставится никуда кроме таблицы так как у вас tableview является основным вью, и поставить его просто некуда больше. Становится черным наверное потому что вы ставите серч бар вместе с серч контроллером, это нормально, так как поверх затемненной вьюхи добавляется новая таблица с результатами поиска, контент которой нужно еще реализовать, чтобы что-то увидеть.
Уменьшить таблицу в UITableViewController нельзя так как кроме таблицы у контроллера ничего нет, она является корневой вьюхой. Зачем вы используете TableViewController? Его удобно использовать для статических таблиц, а в вашем случае делайте так, как написал Maksys Это сообщение отредактировал(а) Bitter - 5.10.2012, 20:45 |
|||
|
||||
| cosamia |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 231 Регистрация: 11.5.2005 Репутация: нет Всего: нет |
>он не ставится никуда кроме таблицы так как у вас tableview является основным вью, и поставить его просто некуда больше.
Да. Это я уже понял >Становится черным наверное потому что вы ставите серч бар вместе с серч контроллером, Что значит серч бар вместе с серч контроллером? У меня структура иерархии следующая: TableViewController SearchBar TableCell Label Label TableViewController наследуется от кастомного TableViewController TableCell - также кастомный SearchBar ни от кого не наследуется, отдельный контроллер для него отсутствует >это нормально, так как поверх затемненной вьюхи добавляется новая таблица с результатами поиска, контент которой нужно еще реализовать, чтобы что-то увидеть Вот это непонятно. Для iPhone все работает нормально и собственно я не добавляю новую таблицу. Серч работает так: поиск прошел - удалил все что есть, вставил все что нашел. Так что я не понял что не так и как избавиться от черного контента >Зачем вы используете TableViewController? Его удобно использовать для статических таблиц, а в вашем случае делайте так, как написал Maksys Я попробовал создать еще 1 контроллер, на него положил вьюшку, на нее положил таблицу сам контролер заинхерител от моего UITableView кастомного контроллера где уже вся логика расписана В результате все стало вылетать почему я не понял ведь я установил аутлеты и делегаты |
|||
|
||||
| Bitter |
|
|||
![]() Опытный лентяй ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1209 Регистрация: 15.8.2004 Где: Харьков, Ukraine Репутация: 10 Всего: 27 |
Это элементарные вещи описанные в любом учебнике, зачем это объяснять? Вот обычный search bar (просто компонент выступающий в роли источника ввода текста): ![]() А вот search bar + search controller. То есть кроме текстового поля создается дополнительно контроллер, имеющий таблицу для вывода результатов. ![]() Это я и имел в виду. Вы хоть бы скриншот приложили, а то только вы понимаете что у вас происходит. Тут вообще-то никто вам не обязан ничего объяснять. Это неправильно, по этому и вылетает. Вы создаете простой вьюКонтроллер, с обыной вьюхой, а потом в коде наследуете его от tableViewController, который в качестве вьюхи использует таблицу, а не обычную вьюху. И когда он обращается к своей вьюхе как к таблице - тогда и вылетает |
|||
|
||||
| cosamia |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 231 Регистрация: 11.5.2005 Репутация: нет Всего: нет |
А что за учебник? А то может я скачал бы...
|
|||
|
||||
| Maksys |
|
|||
|
Future Splasher ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1289 Регистрация: 15.6.2005 Где: Екатеринбург Репутация: нет Всего: 17 |
||||
|
||||
| cosamia |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 231 Регистрация: 11.5.2005 Репутация: нет Всего: нет |
В общем образовалась проблема с этим searchBarController
Я закинул его на вьюшку, добавил аутлеты и сразу получил ошибку: Property searchDisplayController attempting to use ivar _searchDisplayController declared in super class UIViewController После этого я создал тестовый проект где на tableController закинул searchDisplayController Установил аутлеты - и тестовый проект компилируется без проблем Разница в том, что в моем настоящем проекте, во-первых вьюшка закреплена за мастер частью splitViewController (хотя я не думаю что в этом проблема) А во-вторых, вьюшка наследуется не от UITableViewController класса а от другого класса CoreDataTable который в свою очередь наследуется от UITableViewController По идее тут все правильно и ошибки быть не должно, но не работает.. |
|||
|
||||
| cosamia |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 231 Регистрация: 11.5.2005 Репутация: нет Всего: нет |
Проблему с свойством решил тем что в синтезировании вместо
@synthesize prop = _prop оставил просто @synthesize prop Тем не менее предложенный вариант с использованием searchdisplaycontroller не решил проблему черных областей как было черно так и осталось |
|||
|
||||
| Bitter |
|
|||
![]() Опытный лентяй ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1209 Регистрация: 15.8.2004 Где: Харьков, Ukraine Репутация: 10 Всего: 27 |
Покажите хоть скриншот, может станет понятен характер этих ваших черных областей
|
|||
|
||||
| Maksys |
|
|||
|
Future Splasher ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1289 Регистрация: 15.6.2005 Где: Екатеринбург Репутация: нет Всего: 17 |
обычно в таких случаях я в своей ветке по Flash говорил: "Кидай проект на мыло".
|
|||
|
||||
| cosamia |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 231 Регистрация: 11.5.2005 Репутация: нет Всего: нет |
Я сейчас пока что удалил серчбар так что чтобы сделать скриншот придется его восстанавливать Не думаю что скриншот что-то отдельное покажет Как я уже говорил, для пейзажной ориентации картина слеующая: Детейл показывается отлично Мастер весь полностью черный Поверх их обоих половина нижнего экрана занимает клавиатура которая активировалась после активации серчбара Для портретной ориентации картинка чуть лучше: При портретной ориентации мастер все-таки виден тк он выдвигается И у мастера вместо полностью всего черного просто появляется затемненная полупрозрачная зона от клавиатуры до примерно половины видимой части мастера |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | iOS | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |