小吃店的边距根本不起作用。我正在尝试在快餐栏布局的所有4个面上设置边距。
协调器布局:
CoordinatorLayout.LayoutParams layoutParams = (CoordinatorLayout.LayoutParams) snackbarLayout.getLayoutParams();
layoutParams.setMargins(layoutParams.leftMargin + 20,layoutParams.topMargin + 20,layoutParams.rightMargin + 20,layoutParams.bottomMargin + 20);
snackbarLayout.setLayoutParams(layoutParams);
框架布局:
FrameLayout.LayoutParams layoutParams = (FrameLayout.LayoutParams) snackbarLayout.getChildAt(0).getLayoutParams();
layoutParams.setMargins(layoutParams.leftMargin + 20,layoutParams.topMargin + 20,layoutParams.rightMargin + 20,layoutParams.bottomMargin + 20);
snackbarLayout.getChildAt(0).setLayoutParams(layoutParams);
这些方法均无效,我正在使用 AndroidX ,并在 AndroidQ 上进行测试。
import com.google.android.material.snackbar.Snackbar;
注意:框架布局方法设置内部边距(在布局内部),但我希望它在外部设置。
答案 0 :(得分:0)
我找到了解决方案,我使用Theme.MaterialComponents.NoActionBar
作为默认主题,并且有效!
<style name="AppTheme" parent="Theme.MaterialComponents.NoActionBar">