2015-04-12 2 views
1

Я делаю приложение iOS с помощью устройств Autolayout и Universal. Все работает отлично на обоих устройствах, кроме одного, цвета. Меняю цвета непосредственно формируют раскадровки, так что я не знаю, почему это происходит:Цвета разные при тестировании на iPad и iPhone

Вот скриншот iPhone, IPad и скриншот той же точки зрения:

iPhone view iPad view

Я имел некоторые цвета, которые были установлены по умолчанию в раскадровке, но даже после установки их она не совершенна:

iPad view after some changes of default cl

ответ

0

Для того, чтобы заставить его работать с любым сотовым, вид аксессуара или нет, вы должны добавить эту функцию в контроллере:

override func tableView(tableView: UITableView, willDisplayCell cell: UITableViewCell, forRowAtIndexPath indexPath: NSIndexPath) { 
    cell.backgroundColor = UIColor(red: 44/255, green: 42/255, blue: 43/255, alpha: 1) 
} 
1

чтобы установить фоновый гр olor для UITableView вам необходимо создать фоновый просмотр и присвоить его tableView.backgroundView. Так, в viewDidLoad вашего ViewController:

override func viewDidLoad() { 
    super.viewDidLoad() 

    let backgroundView = UIView() 
    backgroundView.backgroundColor = UIColor.redColor() // just to demonstrate   
    self.tableView.backgroundView = backgroundView 
} 
+0

Спасибо, я я буду тестировать это. Но почему это работает на iPhone, а не на iPad? –

+0

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

+0

Это помогло, хотя я изменил его с раскадровки, но он не работал на аксессуар. –

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