我有一個自定義的視圖類從視圖擴展,我想在活動中使用它,但它不顯示任何內容。它沒有運行錯誤,但黑屏沒有輸出。我的代碼如下:自定義視圖不顯示
public class MoveableMenuLayout extends View {
public MoveableMenuLayout(Context context, AttributeSet attrs) {
super(context, attrs);
LinearLayout ll = new LinearLayout(context);
ll.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
TextView tv = new TextView(context);
tv.setText("TES_______________");
ll.addView(tv);
this.invalidate();
this.requestLayout();
}
public MoveableMenuLayout(Context context) {
super(context);
LinearLayout ll = new LinearLayout(context);
ll.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
TextView tv = new TextView(context);
tv.setText("TES_______________");
ll.addView(tv);
this.invalidate();
this.requestLayout();
}
}
呼叫Activity
public class TestActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
MoveableMenuLayout layout = new MoveableMenuLayout(this);
setContentView(layout);
}
}
我已經將其包含在XML佈局,但仍然沒有輸出試過。我不確定我做錯了什麼。我不想改變我希望它成爲一個單獨的類的風格,我知道我可以使用xml佈局並直接在帶有setcontentview的Activity中進行設置,但我不想那樣做。謝謝
首先創建的線性佈局不會被添加到任何視圖中。而且你也不能添加任何其他視圖到簡單的視圖,因爲它不是一個容器。你可以嘗試擴展你的MoveableMenuLayout – Triode 2013-02-19 17:05:12