我有一个带纽扣子的recyclerview。在设备旋转时,我需要更改所有按钮的高度以适合某些情况下的屏幕。我的问题是,将方向更改为水平后,所有小部件的高度都需要与其文本内容匹配。
我尝试过的事情:
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT,
LinearLayout.LayoutParams.WRAP_CONTENT);
button.setLayoutParams(params);
我也试图
button.forceLayout();
按钮布局:
<Button
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
style="@style/AppButtonMenu"
android:layout_width="match_parent"
android:layout_height="wrap_content"
tools:showIn="@layout/fragment_kanban_menu" />
@ style / AppButtonMenu:
<style name="AppButtonMenu">
<item name="android:textAppearance">@style/TextAppearance.AppCompat.Medium</item>
<item name="android:textAllCaps">false</item>
<item name="android:gravity">center_vertical|left</item>
<item name="android:padding">@dimen/margin_base_2x</item>
<item name="android:layout_margin">@dimen/margin_base_05x</item>
<item name="android:textColor">@android:color/white</item>
<item name="android:drawablePadding">@dimen/margin_base_3x</item>
</style>
我不想使用此How to reset or unset a view height or width which were set programmatically
的解决方案