2016-03-04 29 views
0

我有一個片段中的購物列表的列表視圖,當我單擊一個時,我會看到一個新的活動,它顯示列表視圖與點擊購物列表中的所有產品。我想要做的是通過在新創建的活動中選擇一些複選框並將它們傳遞給以前的活動來添加產品。將對話框中的選中項顯示到上一個活動中

public class DisplayShoppingListDetailsActivity extends AppCompatActivity{ 
    private ShoppingList list; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     //defines the activity layout 
     setContentView(R.layout.shopping_list_details); 

     ListView listView = (ListView) findViewById(R.id.shopping_list_details); 

     Intent intent = getIntent(); 
     list = (ShoppingList) intent.getSerializableExtra("ShoppingList"); 

     ProductsOnListAdapter ad = new ProductsOnListAdapter(this, -1, Service.getService().getProductsOnList(list)); 
     listView.setAdapter(ad); 

     FloatingActionButton button = (FloatingActionButton) findViewById(R.id.floatingButton); 
     button.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       startActivityForResult(new Intent(DisplayShoppingListDetailsActivity.this, ListOfProductsActivity.class)); 
       //This method here is not working...it says it cannot resolve the method 
      } 
     }); 

    } 
+0

我不清楚 - 你是說你想要一項活動直接修改之前活動的內容? –

+0

是的,這樣的。我想點擊對話框中的按鈕,然後我想保存所有選中的項目並將它們顯示在前面的活動中 –

回答

0

你真的不應該有一個活動試圖修改另一個活動的實例。這將導致您的代碼中出現錯誤。

相反,在第一個活動中,您可以使用startActivityForResult()啓動第二個活動,然後第二個活動可以使用setResult()將數據返回到第一個活動。如果您在標題「開始活動和取得成果」下閱讀javadoc的Activity,則全部記錄在案。

+0

我一直在閱讀關於此的內容,但我無法讓它適用於我......它讓我發瘋。我真的無法弄清楚。我會在後面添加代碼,也許你可以看到我做錯了什麼。 –

相關問題