我正在嘗試在我的主要活動中使用自定義類。
DrawingCanvas drawingCanvas = new DrawingCanvas();
要定義類,我必須向它傳遞兩個引數。這是我的建構式。
public DrawingCanvas(Context context, @Nullable AttributeSet attrs) {
super(context, attrs);
}
我知道我需要做類似下面的事情,但我不確定要為屬性集傳遞什么。
DrawingCanvas drawingCanvas = new DrawingCanvas(this, );
uj5u.com熱心網友回復:
我假設DrawingCanvas是從View類擴展或從它繼承的類。
在這種情況下,使用類似于以下的建構式會很方便:
public DrawingCanvas(@NonNull Context context) {
this(context, null);
}
public DrawingCanvas(@NonNull Context context, @Nullable AttributeSet attrs) {
this(context, attrs, 0);
}
public DrawingCanvas(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
// more code…
}
這樣你就可以選擇最合適的一個。如您所見,當沒有時AttributeSet,您可以通過null。
現在你只需要這樣做:
DrawingCanvas drawingCanvas = new DrawingCanvas(this);
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/371114.html
標籤:javascript 安卓
上一篇:如何在OBJECTSNOTsort陣列的OBJECT內重新排序ELEMENT?
下一篇:php表中的進度條
