2012-09-04 27 views
1

我有一個彈出式窗口的活動(使用充氣)和陣列從彈出窗口傳遞數組列表於母公司活動

public class PopUp extends Activity{ 

ArrayList<String> nameSave = new ArrayList<String>(); 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.popup_layout); 
    getActionBar().setDisplayHomeAsUpEnabled(true); 


} 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    getMenuInflater().inflate(R.menu.popup_layout, menu); 
    return true; 
} 


@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    switch (item.getItemId()) { 
     case android.R.id.home: 
      NavUtils.navigateUpFromSameTask(this); 
      return true; 
    } 
    return super.onOptionsItemSelected(item); 
} 
public void upload(View view) 
{ 

    EditText editText = (EditText) findViewById(R.id.nameBox); 
    String name = editText.getText().toString();   
    nameSave.add(name); 

} 

首先,我甚至不知道我是否得到了陣列/列表工作對。基本上,當用戶點擊按鈕「上傳」時,我希望它抓住名稱並將其添加到數組中。然後我希望該數組發回到之前有兩個片段的活動(Launch)。一個片段是一個列表視圖,我想將數組的內容放入該片段中。我如何去傳遞這個數組?這與把它放在意圖中一樣簡單嗎?

+0

用戶StartActivityForResult()代替startActivity()並通過覆蓋onActivityResult()來處理結果 –

回答

0

是的,你可以把putStringArrayListExtra(name, value)在你的意圖通過startActivityForResult(intent, requestCode)意圖,當你完成這個Activity。您可以通過下面描述的方法獲得意圖,因爲當您的當前Activity完成時將調用該方法。因此,獲取所需的數據並執行您想要處理的數據。或者你也可以把數組放在意圖中。

protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    // TODO Auto-generated method stub 
    if (requestCode == REQUEST_CODE && resultCode == RESULT_OK) { 
     get your data here and do what ever you want to do with it 
    } 
} 

in previous Activity。我的這將幫助你。

+0

您是否想介紹一下有關它的工作原理的更多細節? – Nogg

+0

okk當你打算傳遞ArrayList或從前一個活動的數組,然後不使用'startActivity(intent)'而不是你應該使用'startActivityForResult(intent,requestCode)',所以當你開始活動,然後一個新的活動是在棧上,所以它對你來說是可見的,現在當這個活動完成你之前的Activity的onActivityResult(int requestCode,int resultCode,Intent data)'這裏你有意圖,並且在這個意圖中你可以得到你的活動完了。 – BBdev

+0

欲瞭解更多詳細信息,你可以檢查如何使用這些方法在這裏更詳細的,你可以檢查http://mobileorchard.com/android-app-development-using-intents-to-pass-data-and-return-results-between - 活動/你也可以檢查這一個這一個更清晰http://www.vogella.com/articles/AndroidIntent/article.html#intents – BBdev