2017-04-03 55 views
0

我試圖將5個用戶編輯的EditText字段傳遞給ArrayList,以在下一個活動中填充ToggleButon如何將多個userInputs傳遞給ArrayList?

不知道爲什麼我在我的java代碼中得到"method call expected"錯誤。

我已經啓動了我的userInput ArrayList與我的活動,但仍然撞牆。

任何代碼的建議或鏈接到一些有用的文檔,將不勝感激

public class MainActivity extends AppCompatActivity { 


EditText venueOption1; 
EditText venueOption2; 
EditText venueOption3; 
EditText venueOption4; 
EditText venueOption5; 

Button UpdateVenueButton; 

public static ArrayList<String> userInput; 



@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    venueOption1 = (EditText) findViewById(R.id.venueOption1); 
    venueOption2 = (EditText) findViewById(R.id.venueOption2); 
    venueOption3 = (EditText) findViewById(R.id.venueOption3); 
    venueOption4 = (EditText) findViewById(R.id.venueOption4); 
    venueOption5 = (EditText) findViewById(R.id.venueOption5); 


    UpdateVenueButton = (Button) findViewById(R.id.button); 

    userInput = new ArrayList<>(4); 




    UpdateVenueButton.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      venueOption1 = (EditText) findViewById(R.id.venueOption1); 
      getUserInput(userInput.get(0)); 

      venueOption2 = (EditText) findViewById(R.id.venueOption2); 
      getUserInput(userInput(1)); 

      venueOption3 = (EditText) findViewById(R.id.venueOption3); 
      getUserInput(userInput(2)); 

      venueOption4 = (EditText) findViewById(R.id.venueOption4); 
      getUserInput(userInput(3)); 

      venueOption5 = (EditText) findViewById(R.id.venueOption5); 
      getUserInput(userInput(4)); 

      Intent intent = new Intent(v.getContext(), VenueOptions.class); 
      startActivity(intent); 
     } 
    }); 


} 
+0

爲了幫助我們來幫助你,如果你發佈這將是更好[MCVE(http://stackoverflow.com/help/mcve )以及實際的錯誤文本/堆棧跟蹤。 –

+0

請將代碼放在您的問題中,而不是鏈接 –

+0

另外'公共靜態Arraylist'是在活動之間傳遞數據的不好主意。學習正確使用意圖額外 –

回答

1

這個錯誤是因爲Java是盼着你呼籲數組列表的方法,而是你只是把括號靠近。這在java語法中沒有意義。數組元素可以用[]直接訪問,但ArrayList元素不能直接訪問,你必須使用get(index)方法。取而代之的

getUserInput(userInput(0)); 

你應該做的

getUserInput(userInput.get(0));