2013-02-23 104 views
0

我是新來的android編程。 我想知道哪個是更好的方式創建像按鈕一樣的UI元素;在layout.xml中定義它們或在運行時通過java添加它們:動態創建按鈕vs創建它通過xml文件(靜態)?

public void onCreate(Bundle icicle) { 
    super.onCreate(icicle); 

    LinearLayout ll = new LinearLayout(this); 
    mRecordButton = new RecordButton(this); 
    ll.addView(mRecordButton, 
     new LinearLayout.LayoutParams(
      ViewGroup.LayoutParams.WRAP_CONTENT, 
      ViewGroup.LayoutParams.WRAP_CONTENT, 
      0)); 

有人可以解釋它的優點和缺點嗎?

謝謝 Utsav。

+1

你想在整個活動期間按鈕在那裏,或者你想動態生成按鈕..你的答案 – smk 2013-02-23 22:47:54

+0

你會在99%的情況下使用XML,因爲你可以在視覺上做到這一點,圖形編輯器將設置所有必要的屬性。很長一段時間,您可能需要在運行時添加UI元素,但即使這樣做也可以通過Visibility或在ListView或GridViews中添加動態按鈕(即按鈕列表)來完成。 – 323go 2013-02-23 22:53:10

+0

其主要關於多功能性,就像在某些情況下,您希望用戶確定顯示在屏幕上的某些視圖的數量,以便使代碼加載視圖,某些應用程序具有無法更改的標準UI,您可以只是做一個XML而不必擔心它,這就是爲什麼他們告訴你坐下來,並實際制定出你的整個程序,然後再編寫它,這樣你就可以做出正確的方式 – JRowan 2013-02-23 22:53:13

回答

1

如果在代碼中實現按鈕,可視化佈局會困難得多,因此很難維護。現在在極少數情況下,您可能需要在代碼中執行此操作,但通常不推薦。而且,如果你在代碼和xml文件中實現本地化將變得更加困難。