请问 对应以下代码 getBackground().getIntrinsicHeight() 是什么意思呢? 得到的是什么值呢?
麻烦知道的朋友帮忙回复,谢谢啦
代码如下:
public class MyTab extends LinearLayout
{
public MyTab(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
TypedArray a = context.obtainStyledAttributes(attrs,
R.styleable.TabWidget, defStyle, 0);
。。。。
。。。
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
int widthSpecMode = MeasureSpec.getMode(widthMeasureSpec);
int widthSpecSize = MeasureSpec.getSize(widthMeasureSpec);
int heightSpecMode = MeasureSpec.getMode(heightMeasureSpec);
int heightSpecSize = MeasureSpec.getSize(heightMeasureSpec);
if (widthSpecMode != MeasureSpec.EXACTLY) {
widthSpecSize = 0;
}
if (heightSpecMode != MeasureSpec.EXACTLY) {
heightSpecSize = 0;
}
if (widthSpecMode == MeasureSpec.UNSPECIFIED
|| heightSpecMode == MeasureSpec.UNSPECIFIED) {
}
int width;
int height;
width = Math.max(getMeasuredWidth(), widthSpecSize);
height = Math.max(this.getBackground().getIntrinsicHeight(),heightSpecSize);
setMeasuredDimension(width, height);
}
}
180 阅读