package com.fanwe.library.customview;
import java.lang.reflect.Field;
import android.content.Context;
import android.graphics.Bitmap;
import android.util.AttributeSet;
import android.widget.RatingBar;
public class SDRatingBar extends RatingBar
{
public SDRatingBar(Context context)
{
super(context);
}
public SDRatingBar(Context context, AttributeSet attrs)
{
super(context, attrs);
}
public SDRatingBar(Context context, AttributeSet attrs, int defStyle)
{
super(context, attrs, defStyle);
}
@Override
protected synchronized void onMeasure(int widthMeasureSpec, int heightMeasureSpec)
{
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
try
{
Class<?> clazz = Class.forName("android.widget.ProgressBar");
Field field = clazz.getDeclaredField("mSampleTile");
field.setAccessible(true);
Object bitmapObject = field.get(this);
Bitmap bitmap = (Bitmap) bitmapObject;
int height = bitmap.getHeight();
if (height > 0)
{
setMeasuredDimension(getMeasuredWidth(), resolveSizeAndState(height, heightMeasureSpec, 0));
}
} catch (Exception e)
{
e.printStackTrace();
}
}
}
android 评价星星保持不失真
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 前言:目前一般手机的相机都能达到800万像素,像我的Galaxy Nexus才500万像素,拍摄的照片也有1.5M...
- 转载请注明出处:http://blog.csdn.net/linglongxin24/article/detail...
- 选择的废话不多说先上图 GitHub地址:成品使用或者查看完整代码 简单的结构 自定义一个StarEvaluati...