Я верстку делаю в стриборде, но по тому что вижу я (своим таким же не опытным взглядом) — у вас проблема с высотой в том, что вы задали меньше либо равно 180, но больше никаких условий не задали.
Т.е. примерно тоже самое, если бы вы сказали: "Конкретная высота равна 180 или меньше". Нужно еще какое-то условие, например, привязка пропорциональности размера к другому View. От вас нужны четкие правила и принципы, а тут сказали общей фразой, которая никаких закономерностей не дает — когда 180, когда 170, а когда вообще 0. По крайней мере я не уловил что у вас там в коде, не моя стихия )) Может кто другой предметнее подскажет )