2016-02-08 1 views
7

У меня есть плавающие заголовки для моего UITableView (который я хочу). Но это выглядит довольно плохо, когда представление предложения для UITextView в ячейке выше находится под заголовком.Предложение для UITextView находится под плавающим заголовком для UITableView

Похоже, что никто раньше не имел этой проблемы. Какие-либо предложения?

И клетка заголовка, и UITableViewCell загружается из Xib.

Плавающий заголовок имеет альфу на своем втором верхнем изображении, так что это немного видно.

Floating header is above suggestion dialog for UITextView

Вот как это выглядит в "Debug View Иерархии":

enter image description here

+0

Я предполагаю, что правильный способ его решить, чтобы сделать орфографическое диалоговое окно show_over_ текст, а не под ним в этом случае. Тем не менее, я думаю, что это зависит от Apple. Я не думаю, что есть API, чтобы это исправить. – Sunkas

ответ

4

Что делать, если вы отправляете, что UITextView к передней части стека?

https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIView_Class/index.html#//apple_ref/occ/instm/UIView/bringSubviewToFront:

Я подозреваю, что, если он находится за взгляд ниже его, что вид автозамены может также выполнять индекс представления о UITextView.

+0

Нет, не помогает. Я предполагаю, что это так, как textview находится в ячейке и перемещает его с помощью 'bringSubviewToFront:' только перемещает его относительно других подзонов в этой ячейке. – Sunkas

+0

Этот плавающий заголовок отображает пользовательское представление для заголовка раздела? –

+0

Еще одна вещь zIndex, чтобы попробовать ... Что делать, если вы делаете это: theView.layer.zPosition = MAXFLOAT; Это единственное, что я могу придумать, что приведет к рендерингу этого слоя в верхнюю часть (все еще не уверен, что окно автокоррекции будет почитать это. –

5

Что делать, если вы сделали что-то вроде «вытащить» UITextView из таблицы, когда пользователь выходит из нее. Вы можете выровнять его сверху и сделать хороший переход к состоянию редактирования, возможно, с представлением таблицы, показывающим размытое наложение или что-то в этом роде, но это позволит вам взять под контроль состояние редактирования вместо того, чтобы иметь его в основном в руках UITableView, который не был предназначен для многострочного редактируемого содержимого ячейки.

+0

Да, это может быть альтернативным способом его решения. Кажется немного сложным, хотя, что произойдет, если пользователь прокрутит, чтобы увидеть начало UITextView, если он большой, чтобы соответствовать экрану? – Sunkas

+0

Вот что я имел в виду, возьмем редактирование текста в его это модальное состояние. Это большое изменение для небольшой проблемы, но в противном случае вы рискуете столкнуться с жульниковой ошибкой. Если вы исчерпаете все другие проблемы, и вы просто должны ее исправить, это может стоить всплеска, чтобы почувствовать. – Michael

+0

I нашел более простой способ. Когда я начинаю фокусироваться в ячейке, я устанавливаю непрозрачность фона головного телефона ниже 0. Это заставит его выглядеть так, как показано выше. Это работает только с фона всего tableview i s того же цвета, что и заголовки. – Sunkas

Смежные вопросы