У меня есть кнопка (это кнопка Bootstrap, основанная на com.beardedhen: androidbootstrap).
Это ширина и высота макета в файле xml:
android:layout_width="0dp"
android:layout_height="wrap_content"
Я хочу изменить размер текста кнопки, когда меняется ориентация (и также зависеть от различных размеров экрана).
Причина, по которой я хочу это сделать Это связано с тем, что в альбомной ориентации кнопка больше, чем в портретной.
DisplayMetrics dm = new DisplayMetrics();
float height = dm.heightPixels;
float width = dm.widthPixels;
BootstrapButton btn = findViewById(R.id.btn);
float density = getResources().getDisplayMetrics().density;
btn.setTextSize((width / density) / 32);
Код вычисляет ширину и высоту экрана и соответственно устанавливает размер текста. Таким образом, я получаю правильный размер текста на основе экрана устройства и его ориентации (где ширина становится высотой и наоборот).
Проблема заключается в том, что этот код не работает при изменении ориентации .
Чего мне не хватает?
Спасибо за помощь.