2014-03-07 57 views
2

我對這個問題進行了大量的研究,但沒有得到我想要的答案。 所以我確實有一個應用程序從服務器獲取字符串。該系列字符串採用XML格式。從服務器載入XML佈局(android)

這裏是什麼,我應該從服務器獲取一個例子(你可以看到它的佈局):

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" > 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="@string/number_ref" /> 
    <EditText 
     android:id="@+id/etTxtNumber" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" /> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="@string/subject_ref" /> 
    <EditText 
     android:id="@+id/etTxtSubject" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" /> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="@string/body_ref" /> 
    <EditText 
     android:id="@+id/etTxtBody" 
     android:layout_width="match_parent" 
     android:layout_height="200dp" /> 
    <LinearLayout 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:orientation="horizontal" > 
      <Button 
       android:id="@+id/btnTxtSave" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="@string/save_ref"/> 
      <Button 
       android:id="@+id/btnTxtSend" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="@string/send_ref"/> 
      <Button 
       android:id="@+id/btnTxtClose" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="@string/close_ref"/> 
    </LinearLayout> 

</LinearLayout> 

這將取決於什麼xml文件從服務器上傳來改變。我的問題是如何將這些系列的字符串實現爲佈局並作爲活動的佈局進行加載。我正在考慮將它保存在一個xml文件中,並將其加載到設備的sdcard中,然後將其作爲佈局加載,但我想在運行代碼後無法重新編譯代碼。有什麼建議麼?謝謝。

回答

5

如在Android documentation中所述,佈局xml文件在運行時不使用 - 它們在編譯時編譯爲二進制代碼。所以,你不能直接加載xml作爲Layout。

您必須編寫讀取xml的代碼,解釋它,並使用Android API方法創建相應的View。

+0

是否有任何圖書館? – cuddlecheek