Alterar a altura do AppBarLayout programaticamente no Android
Estou tentando implementar o Espaço flexível com padrão de imagem, usandoeste tutorial.
Tudo funciona bem.
Observe a definição de altura do AppBarLayout, que é 192dp.
Gostaria de fazer a altura 1/3 da tela, para correspondereste exemplo do google para o padrão aqui.
Aqui está o código no onCreate da atividade (o xml de layout é exatamente o mesmo que no tutorial):
AppBarLayout appbar = (AppBarLayout)findViewById(R.id.appbar);
float density = getResources().getDisplayMetrics().density;
float heightDp = getResources().getDisplayMetrics().heightPixels / density;
appbar.setLayoutParams(new CoordinatorLayout.LayoutParams(LayoutParams.MATCH_PARENT, Math.round(heightDp / 3)));
Mas, por alguma razão, o resultado não é o que estou esperando. Não consigo ver a barra de aplicativos com esse código. (sem o código, a altura é exibida conforme o esperado, mas é do XML e não pode ser definida dinamicamente).