QuickContactBadge去掉三角

简介:

我们首先来分析一下QuickContactBadge源码


在QuickContactBadge构造函数中会给mOverlay赋值

  1. private Drawable mOverlay;  
  2. public QuickContactBadge(  
  3.             Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {  
  4.         super(context, attrs, defStyleAttr, defStyleRes);  
  5.   
  6.         TypedArray styledAttributes = mContext.obtainStyledAttributes(R.styleable.Theme);  
  7.         mOverlay = styledAttributes.getDrawable(  
  8.                 com.android.internal.R.styleable.Theme_quickContactBadgeOverlay);  
  9.         styledAttributes.recycle();  
  10.   
  11.         if (!isInEditMode()) {  
  12.             mQueryHandler = new QueryHandler(mContext.getContentResolver());  
  13.         }  
  14.         setOnClickListener(this);  
  15.     }  


所以我是利用java反射机制给mOverlay赋值为空

  1. QuickContactBadge headImage = (QuickContactBadge)findViewById(R.id.head_image);  
  2. //利用反射机制给QuickContactBadge.mOverlay复制为null  
  3. try {  
  4.     Field f = headImage.getClass().getDeclaredField("mOverlay");  
  5.     f.setAccessible(true);   
  6.     f.set(headImage,null);   
  7. catch (Exception e) {  
  8.     e.printStackTrace();  
  9. }   



效果图如下:


目录
相关文章
|
7月前
|
编译器
11.14作业(打印图案,乘法表右对齐,圆周率,哥德巴赫猜想)
11.14作业(打印图案,乘法表右对齐,圆周率,哥德巴赫猜想)
|
7月前
47.从键盘上输入一个3*3的矩阵,并求其主对角线元素的和
47.从键盘上输入一个3*3的矩阵,并求其主对角线元素的和
60 0
|
7月前
|
算法
算法题—顺时针打印矩阵
算法题—顺时针打印矩阵
49 0
|
7月前
|
存储 算法 Java
给定一组棋子的坐标,判断是否可以互相攻击。如果两个棋子的横纵坐标任意一个相同,则认为它们可以互相攻击。(提示:使用哈希表)
给定一组棋子的坐标,判断是否可以互相攻击。如果两个棋子的横纵坐标任意一个相同,则认为它们可以互相攻击。(提示:使用哈希表)
50 0
用键盘读入一个字符,然后在屏幕上显示一个用这个字符填充的对角线长5个字符,倾斜放置的菱形
用键盘读入一个字符,然后在屏幕上显示一个用这个字符填充的对角线长5个字符,倾斜放置的菱形
126 0
判断上三角矩阵
判断上三角矩阵 (15 分)
121 0
|
算法 前端开发 程序员
顺时针打印矩阵
顺时针打印矩阵
顺时针打印矩阵
|
算法 程序员 C语言
|
存储 人工智能 BI
391. 完美矩形 : 常规扫描线题目
391. 完美矩形 : 常规扫描线题目
WORD出错:绕排时,字太靠近形状
WORD出错:绕排时,字太靠近形状
110 0
WORD出错:绕排时,字太靠近形状