Palestra sobre ConstraintLayout apresentada no meetup de Android do GDG Rio de Janeiro (25/05/2016).
Assista a apresentação em: https://www.youtube.com/watch?v=GcOpTVdtjRU
4. ConstraintLayout
• Implementa o conceito de flat layout, ou seja, sem uma a
profunda hierarquia de layout. Com isso, a renderização fica mais
rápida, bem como o acesso às Views em tempo de execução.
• Você pode criar quase todos os seus arquivos de layouts usando
apenas o RelativeLayout e/ou LinearLayout. E o ConstraintLayout
é um mix dos dois, com mais recursos.
• É muito mais fácil criar os layout utilizando visual editor, para
iniciantes (e até designers) isso é ótimo.
• A adoção por parte dos desenvolvedores iOS é facilitada já que
eles já usam o conceito similar, tornando a curva de aprendizado
do Android menos acentuada.
22. E no código?
val constraintLayout = findViewById(R.id.constraint_layout) as ConstraintLayout
val set = ConstraintSet()
set.clone(constraintLayout)
set.clear(R.id.txt_title, ConstraintSet.LEFT)
set.clear(R.id.txt_subtitle, ConstraintSet.LEFT)
set.connect(R.id.txt_title, ConstraintSet.RIGHT,
ConstraintSet.PARENT_ID, ConstraintSet.RIGHT)
set.connect(R.id.txt_subtitle, ConstraintSet.RIGHT,
R.id.txt_title, ConstraintSet.RIGHT)
set.setHorizontalBias(R.id.btn_chain_1, 0f)
set.applyTo(constraintLayout)