我正在使用程序化定义的RelativeLayout,我在RelativeLayout中添加了一个FAB但是FAB的位置是错误的&图标也没有显示......
这是我正在使用的代码 -
final RelativeLayout frameLayout = new RelativeLayout(this);
fab = new FloatingActionButton(this);
fab.setBackground(getDrawable(R.drawable.more));
fablp = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
fablp.addRule(RelativeLayout.ALIGN_BOTTOM);
fablp.addRule(RelativeLayout.ALIGN_RIGHT);
int mrgn = 16;
int xp = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, mrgn, getResources().getDisplayMetrics());
fablp.setMargins(0,0,xp,xp);
frameLayout.addView(fab);
答案 0 :(得分:2)
如评论中所述,尝试:
fablp.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
fablp.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
关于FAB的图标,您可能需要前景图像,而不是背景,请尝试:
fab.setImageDrawable(myDrawable);