android – 在ImageView上设置负边距会移动ImageView但不会移动Image

我需要移动一个 ImageView,它是LinearLayout的直接子节点,向左移动一点.

会发生什么:视图被移动(可以看到“边界框”被移动,使用android布局管理器)但是drawable保持在同一个地方.

如果我将边距设置得足够低,那么在右侧切割可绘制的.

为什么是这样?有什么建议?

>澄清:我必须将图像向左移动.这意味着包含布局边界的一点点.

解决方法

当它们超出父级边界时(似乎还有clipChildren = false),它们似乎总是被剪裁.

解决方案是为要移动的项目之外的所有内容创建额外的容器布局.然后将容器布局向相反方向移动.

例如,要转移-10dip:

<Original container ...>
    <Item to be shifted/>
    <New container with margin 10dip>
         <PrevIoUs content of Original container ... />
    </New container with margin 10dip>
</Original container>

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...