2017-06-05 44 views
0

我看到一個類使用這個類在廣場上顯示圖像。一個在廣場上顯示圖像的類

我不明白這是什麼課程?有什麼功能用於顯示正方形圖像?

在佈局xml文件,而不是RelativeLayout的

class SquareLayout extends RelativeLayout { 

public SquareLayout(Context context) { 
    super(context); 
} 

public SquareLayout(Context context, AttributeSet attrs) { 
    super(context, attrs); 
} 

public SquareLayout(Context context, AttributeSet attrs, int defStyleAttr) { 
    super(context, attrs, defStyleAttr); 
} 

@TargetApi(Build.VERSION_CODES.LOLLIPOP) 
public SquareLayout(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) { 
    super(context, attrs, defStyleAttr, defStyleRes); 
} 

@Override 
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { 
    // Set a square layout. 
    super.onMeasure(widthMeasureSpec, widthMeasureSpec); 
} 
+0

'onMeasure(widthMeasureSpec,widthMeasureSpec)'...這是一個正方形......還有什麼不明白嗎? –

回答

0

使用該代碼的重要線是super.onMeasure(widthMeasureSpec, widthMeasureSpec);。正如你所看到的,高度取代了寬度。所以你有width x width而不是width x height。那是一個正方形。 onMeasure用於告訴系統所請求的視圖區域。希望它可以幫助

相關問題