Устранить лишние разделители ниже UITableView

public class CharacterWrapTextView extends TextView {
  public CharacterWrapTextView(Context context) {
    super(context);
  }

  public CharacterWrapTextView(Context context, AttributeSet attrs) {
    super(context, attrs);
  }

  public CharacterWrapTextView(Context context, AttributeSet attrs, int defStyleAttr) {
    super(context, attrs, defStyleAttr);
  }

  @Override public void setText(CharSequence text, BufferType type) {
    super.setText(text.toString().replace(" ", "\u00A0"), type);
  }
}



(желтый фон: нормальный текст)

671
задан Suragch 10 June 2016 в 00:27
поделиться

2 ответа

Вот еще один способ сделать это без стиль сгруппированной таблицы, о котором вы, вероятно, не догадались. Добавление заголовка и нижнего колонтитула в таблицу (возможно, достаточно одного или другого, не проверял) приводит к исчезновению разделителей в строках-заполнителях / пустых строках.

Я споткнулся. на это, потому что я хотел немного места вверху и внизу таблиц, чтобы снизить риск нажатия кнопок, вместо ячейки таблицы мясистыми пальцами. Вот способ вставить пустое представление в качестве верхнего и нижнего колонтитула. Используйте любую высоту, которая вам нравится, вы все равно избавитесь от лишних разделительных линий.

- (void) addHeaderAndFooter
{
    UIView *v = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 10)];
    v.backgroundColor = [UIColor clearColor];
    [self.myTableView setTableHeaderView:v];
    [self.myTableView setTableFooterView:v];
    [v release];
}

В ответ на @Casebash я вернулся к коду в моем приложении (диспетчер списков «AcmeLists» в магазине iTunes ...) и замкнул addHeaderAndFooter для проверки. Без него у меня есть лишние разделители строк; с кодом у меня есть то, что вы видите в этом окне: нет изображения разделителей строк таблицы . Так что я не уверен, почему это не сработало бы для вас. Более того, для меня имеет смысл, что наличие любого настраиваемого нижнего колонтитула в представлении таблицы обязательно должно остановить рисование разделителей строк для пустых строк под ним. Это было бы ужасно. Для справки я посмотрел на таблицы, в которых было больше строк, чем можно было просмотреть на экране, а затем на таблицу с двумя строками. В обоих случаях никаких посторонних разделителей.

Возможно, ваши пользовательские представления на самом деле не были добавлены. Чтобы проверить это, установите цвет фона, отличный от clearColor , например [UIColor redColor] . Если вы не видите красных полос внизу таблицы, ваш нижний колонтитул не установлен.

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

Возможно, ваши пользовательские представления на самом деле не были добавлены. Чтобы проверить это, установите для цвета фона значение, отличное от clearColor , например [UIColor redColor] . Если вы не видите красных полос внизу таблицы, ваш нижний колонтитул не установлен.

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

Возможно, ваши пользовательские представления на самом деле не были добавлены. Чтобы проверить это, установите цвет фона, отличный от clearColor , например [UIColor redColor] . Если вы не видите красных полос внизу таблицы, ваш нижний колонтитул не установлен.

Я посмотрел на таблицы, в которых было больше строк, чем можно было просмотреть на экране, а затем на таблицу с двумя строками. В обоих случаях никаких посторонних разделителей.

Возможно, ваши пользовательские представления на самом деле не были добавлены. Чтобы проверить это, установите для цвета фона значение, отличное от clearColor , например [UIColor redColor] . Если вы не видите красных полос внизу таблицы, ваш нижний колонтитул не установлен.

Я посмотрел на таблицы, в которых было больше строк, чем можно было просмотреть на экране, а затем на таблицу с двумя строками. В обоих случаях никаких посторонних разделителей.

Возможно, ваши пользовательские представления на самом деле не были добавлены. Чтобы проверить это, установите цвет фона, отличный от clearColor , например [UIColor redColor] . Если вы не видите красных полос внизу таблицы, ваш нижний колонтитул не установлен.

128
ответ дан 3 November 2019 в 21:17
поделиться

Я использовал табличное представление, чтобы показать фиксированное количество строк фиксированной высоты, поэтому я просто изменял его и сделал его не прокручиваемым.

3
ответ дан 3 November 2019 в 21:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: