Вопрос

У меня проблема, когда мой UITableView (групповой стиль) имеет черный "кончик" над его закругленным углом.

Я настраиваю фон tableview следующим образом:

[meetingTableView setBackgroundColor:[[UIColor alloc] initWithPatternImage:[[UIImage alloc] initWithContentsOfFile:@"background.png"]]];

И мое табличное представление в конечном итоге выглядит следующим образом:

черный заостренный край на закругленном углу http://papernapkin.org/pastebin/resource/images/imageEntryId/6487

Есть какие-нибудь идеи, как я могу избавиться от этих черных точек?

Это было полезно?

Решение

У меня такая же проблема.Когда я устанавливаю чистый цвет с помощью xib, у меня остается задний угол Решение состоит в том, чтобы установить его с помощью кода!

(Та же проблема с interface builder существует и для webviews)

Другие советы

Попробуйте это на своем контроллере viewDidLoad метод:

meetingTableView.backgroundColor = [UIColor clearColor];

Вы получите черные углы в стиле группы UITableView, если вы установите цвет фона на чистый цвет в XIB.

Вместо этого попробуйте этот код для удаления черных углов в стиле группы UITableView.

tableViewObject.backgroundColor=[UIColor clearColor];

На случай, если вы еще не знали, есть еще один хитрый метод вы можете использовать для создания индивидуальных фонов для UITableViews:

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

Может быть, если вы поставите yourTableViewOutlet.backgroundView=nil;

Чтобы избежать черных углов, вам необходимо убедиться, что UITableViewCells не являются непрозрачными.Похоже, вы используете ячейки таблицы пользовательских стилей, а значение непрозрачности по умолчанию — ДА.Либо зайдите в Interface Builder и снимите непрозрачный флажок, если ячейка таблицы была настроена в файле XIB.Или используйте setOpaque:NO установщик для изменения значения.

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

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

Я думаю, вам следует установить цвет фона вашей таблицы как ClearColor и инициализировать свое представление фоновым изображением.

Тогда точно не будут видны черные углы.Но также не забудьте установить цвет фона вашей ячейки как белый.

Ответ, за который проголосовали выше (установите для фона tableView значение [UIColor ClearColor]), может не сработать для вас, если вы похожи на меня и никогда не используете UITableViewController, а вместо этого помещаете UITableView внутри UIViewController.

В этом случае не tableView должен иметь четкий фон, а представление, содержащее tableview.

Это не интуитивно понятно, но у меня работает.В конструкторе интерфейсов вы можете просто установить цвет фона родительского представления на чистый цвет или сделать то же самое в коде viewDidLoad с помощью:

self.view.backgroundColor = [UIColor clearColor];

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top