如何根据屏幕大小增加浮动动作按钮的大小
问题描述:
我正在开发一个应用程序,我需要实现浮动动作按钮。另外,我需要根据屏幕大小增加或减少按钮的大小。如何根据屏幕大小增加浮动动作按钮的大小
下面是我的浮动操作按钮代码:
<android.support.design.widget.FloatingActionButton
android:id="@+id/fab"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
app:fabSize="normal"
app:backgroundTint="#2e2745"
android:tint="#ffffff"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:clickable="true"
android:layout_marginBottom="@dimen/fab_margin_bottom"
app:srcCompat="@android:drawable/ic_input_add" />
我试图从android:layout_height="wrap_content"
和android:layout_width="wrap_content"
通常改变了大小,但它并不反映。
屏幕尺寸高于6英寸,浮动按钮看起来非常小,我不知道如何根据屏幕尺寸更改大小。
我在这里做错了什么?
帮助将不胜感激。
在此先感谢。
答
WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();
的getSize之前引入(API等级13),你可以使用那些现在已经过时了的getWidth和getHeight方法:
Display display = getWindowManager().getDefaultDisplay();
int width = display.getWidth(); // deprecated
int height = display.getHeight(); // deprecated
现在你有显示尺寸可以使宽度语法
FloatingActionButton btn=(FloatingActionButton)findViewById(R.id.fab);
btn.setLayoutParams(new LinearLayout.LayoutParams(width/20, height/30)); //as you want
没有,它不工作 –
请替换我的代码是LinearLayout中新LinearLayout.LayoutParams包含FloatingButton我想你把RelativeLayout的所以用新的相对Layout.LayoutParams() –
不要忘记显示你所有的xml代码:)亲自查看并检查它是否适合你 –