2012-11-08 78 views
1

我可以使用2個活動的佈局嗎? 我稱「download.java」和一個稱爲活性「upload.java)和一個佈局稱爲‘main_site.xml’。我可以使用2種活動的佈局嗎?

‘download.java’是在MainActivity 它顯示2個按鈕和一個空的列表視圖 - >「下載」,「上傳」,「lv」

當我點擊上傳時,第二個活動「upload」將啓動,第二次啓動「main_site.xml」,listview將填充數據

現在我有兩次「main_site.xml」一個在另一個上面... 我該如何填充listiview並且不打開「新」佈局?

的OnCreate在download.java

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

    setContentView(R.layout.main_site); 

    if (android.os.Build.VERSION.SDK_INT > 9) { 
     StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build(); 
     StrictMode.setThreadPolicy(policy); 
     } 


    Button download = (Button)findViewById(R.id.cmd_download); 
    download.setOnClickListener(new View.OnClickListener(){ 

     public void onClick(View v){ 

      connectFTP("176.28.25.46"); 
      listItems(); 

      } 
    }); 

    Button upload = (Button)findViewById(R.id.cmd_upload); 
    upload.setOnClickListener(new View.OnClickListener(){ 

     public void onClick(View v){    
      Intent myIntent = new Intent(MainSite.this, upload.class); 
      MainSite.this.startActivity(myIntent); 
      } 
    }); 
} 

的OnCreate在upload.java

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main_site); 
    myPath = (TextView)findViewById(R.id.path); 

    root = Environment.getExternalStorageDirectory().getPath(); 

    getDir(root); 
} 
+0

我不知道你在做什麼試圖完成...你只想改變ListView的內容並在某個時刻使其可見? – takecare

+0

我在MainActivity(Download.java)中有2個按鈕,當我點擊下載時,所有的作品都是有效的,因爲它的代碼在同一個活動中。和按鈕上傳我打電話給一個新的活動,但我喜歡有相同的佈局...並不打開它再次 –

+0

所以是的,這就是我喜歡的。我是否必須將完整的代碼放在同一個活動中? –

回答

2

您應該更新ListView的內容,並使用同一活動中的代碼。

0

當然可以,你只需要使用<include>爲你的標籤,然後再給出一個@+id/YOUR_NAME重用相同的佈局。

1

是的,你可以做。沒有理由不能做到這一點。如果您的活動設計佈局在這兩個活動中都相同(或者與您在應用中的數量相同),則可以在不同的活動中使用相同的layout.xml文件。

+0

但之後layout.xml打開2次....我只是想更新相同的佈局列表視圖,而不是「打開」一個新的活動... –

1

使用靜態數組列表從上傳數據傳遞到下載的活動,只是完成上傳活動,並根據情況使用的onResume靜態的ArrayList()下載活動的

相關問題