Android 框架布局';子对象的s边距底部不';行不通
我有以下视图层次结构:Android 框架布局';子对象的s边距底部不';行不通,android,android-layout,android-view,android-framelayout,Android,Android Layout,Android View,Android Framelayout,我有以下视图层次结构: <FrameLayout> <LinearLayout> <!-- Some Child views--> </LinearLayout> <ImageView> </ImageView> </FrameLayout> 我试图设置ImageView的下边距,在布局编辑器上它似乎可以工作,但当我运行代码时,我设置的下边距被丢弃 重要提示:我还为Im
<FrameLayout>
<LinearLayout>
<!-- Some Child views-->
</LinearLayout>
<ImageView>
</ImageView>
</FrameLayout>
我试图设置ImageView
的下边距,在布局编辑器上它似乎可以工作,但当我运行代码时,我设置的下边距被丢弃
重要提示:我还为ImageView
定义了margin top
,并且确实有效
我看到了其他问题,我已经尝试将FrameLayout
子视图的gravity
设置为top
,但这也不起作用
我还看到Android>3.0(我在4上运行)解决了这个问题--您可以始终将
ImageView
包装到FrameLayout
中,并将ImageView
中所需的底部边距设置为包装的底部填充FrameLayout
:
<FrameLayout>
<LinearLayout>
<!-- Some Child views-->
</LinearLayout>
<FrameLayout // same attributes as the ImageView but with also android:paddingBottom="xxdp">
<ImageView // no margin set here!>
</ImageView>
</FrameLayout>
</FrameLayout>
如果你说这个行为是从蜂巢开始修复的,那么你可以使用依赖API的布局文件夹,我在蜂巢下面的布局和你在任何其他API级别的布局。我的意思是,尽管我使用的是Android版本>3,但它仍然不起作用。我尝试了您的解决方案,但给定的布局是列表项,因此为每行添加一个额外的布局管理器会显著影响性能。@Daniel如果要将其堆叠在
线性布局的顶部,为什么需要图像视图的底部边距(我希望您没有给这两件衣服留出最大的余量)?因为我希望它只覆盖线性布局
上的某一部分,而且不,我没有为线性布局
@Daniel设置上边距。请将您使用的属性发布到布局文件中。天哪!您的回答救了我的命!我被误导,设置了布局的严重性,而您的解决方案是如此简单和简洁伊瑟,谢谢你。