Android view更改背景资源,padding消失的问题

这个需求一般不常用,不过遇到也挺郁闷的。这个应该算是SDK的一个bug,解决的办法,就是设置之前记录下来他的边距,

然后在设置回去。

具体方法

    /**
     * 设置不改变padding的背景
     * 因为android有设置背景后,padding无效的问题
     *
     * @param view
     * @param resId
     * @autor wujiajun
     */
    public static void setBackgroundResourceWithPadding(View view, int resId) {
        int bottom = view.getPaddingBottom();
        int top = view.getPaddingTop();
        int right = view.getPaddingRight();
        int left = view.getPaddingLeft();
        view.setBackgroundResource(resId);
        view.setPadding(left, top, right, bottom);
    }

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-08-01 19:00:00

Android view更改背景资源,padding消失的问题的相关文章

android studio 更改背景和设置字体大小

1,设置字体大小 2,设置背景主题

Android studio 更改背景和设置代码字体与大小

1,设置字体及大小 2,设置背景主题 原文地址:https://www.cnblogs.com/LIUDAclub/p/10660596.html

Android——ViewPager滑动背景渐变(自定义view,ViewPager)

效果: ActivityBackgroundImage,java(自定义视图) package com.example.chenshuai.test322; import android.content.Context; import android.graphics.Canvas; import android.graphics.drawable.Drawable; import android.util.AttributeSet; import android.util.Log; impor

android View 详解

android.View.View(即View)类是以矩形的方式显示在屏幕上,View是用户界面控件的基础.View的继承层次关系如下图: 可以看到所有的界面控件都是View的子类.简单证实一下,每当你用findViewByIds(R.id.xx)时总要将其强转,因为该方法返回的是一个View实例,有木有!!!其中不得不提View的subClass ViewGroup.Android系统中的所有UI类都是建立在View和ViewGroup这两个类的基础上的.所有View的子类成为"Widget&

Android View 的测量流程详解

概述 上一篇 Android DecorView 与 Activity 绑定原理分析 分析了在调用 setContentView 之后,DecorView 是如何与 activity 关联在一起的,最后讲到了 ViewRootImpl 开始绘制的逻辑.本文接着上篇,继续往下讲,开始分析 view 的绘制流程. 上文说到了调用 performTraversals 进行绘制,由于 performTraversals 方法比较长,看一个简化版: // ViewRootImpl 类 private vo

手机卫士05_背景资源_listview优化_进程查看

1.1添加黑名单的ui 拦截类型修改为一组RadioGroup,里面三个RadioButton,RadioGroup可以指定排列方式 其它的都简单,记得定义好ID,顺便抽取点样式就可以了,最后两个Button可以设置状态选择器. 如果不确定LinearLayout有多高,就设置为0dp,权重为1,这样它会自己去填充空白,而不是覆盖. 1.2 电话号码的文本输入框 1.2.1安卓下特殊的图片资源 .9.png 图片 安卓自带的工具:sdk-tools-draw0-pathch 如果是在两侧选定黑点

Android View体系(八)从源码解析View的layout和draw流程

相关文章 Android View体系(一)视图坐标系 Android View体系(二)实现View滑动的六种方法 Android View体系(三)属性动画 Android View体系(四)从源码解析Scroller Android View体系(五)从源码解析View的事件分发机制 Android View体系(六)从源码解析Activity的构成 Android View体系(七)从源码解析View的measure流程 前言 上一篇文章我们讲了View的measure的流程,接下来我们

深入理解Android View(转)

做android其实也有一段时间了,我们每个人都会碰到一些这样或那样的问题,碰到问题了就拼命百度,可是发现,我们解决问题的能力并没有提升很多,所以我才有想总结一下我项目中所用过的相关知识,并了解一下Android源代码中是如何定义这些属性的,如何去实现的.以后再碰到类似的问题,我该如何实现.本人也不常写博客,希望各位博友能指点,分享,并提出博客中不正确的地方,共勉!    首先我发一份我做的关于Android View深入实现的的XMind的思维导图,可以帮助我一起整理思路,若是博友有什么想到的

android 细节之android.view.InflateException: Binary XML file line #95: Error inflating class(out of m)

今天的异常很有意思,叫做android.view.InflateException: Binary XML file line #95: Error inflating class(out of memory) . 其实是因为out of memory,导致 xml是不可能被充气成功,因此activity的onCreate方法中, setContentView(R.layout.***)也就不可能成功调用. 他出现在我有多个教学动画,并且播放的动画,是基于imageView,imageView的