2012-01-10 50 views
0

我想要達到我在我的活動中有一個Input (EditText)框的地方,用戶可以輸入其名稱。我需要它,所以每次輸入一個名字並單擊按鈕「添加」時,它會將該名稱保存爲Array以便我可以在Input (EditText)旁邊的屏幕上顯示它們,但用戶也需要刪除最後一個他們剛添加到Array的名稱上,一旦添加了該按鈕,該按鈕就會出現在名稱旁邊(這樣可能需要保存它們)。用戶輸入文本數組

此外,我需要能夠將Array繼續下一個Activity我必須使它成爲一個全球Array

這是我到目前爲止有:

public class AddRemove extends Activity { 

ArrayList<String> playerList = new ArrayList<String>(); 
String playerlist[]; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    // TODO Auto-generated method stub 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.addremove); 

    Button confirm = (Button) findViewById(R.id.confirm); 
    confirm.setOnClickListener(new OnClickListener() { 
     public void onClick(View v) { 
      final EditText playername = (EditText) findViewById(R.id.userinput); 
      String name = playername.getText().toString(); 
      playerList.add(name); 


    }}); 

} 
} 

和XML:

<EditText 
    android:id="@+id/userinput" 
    android:layout_width="190dp" 
    android:layout_height="40dp" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentTop="true" 
    android:layout_marginLeft="22dp" 
    android:layout_marginTop="95dp" 
    android:hint="Enter Name" 
    > 
    <requestFocus /> 
</EditText> 

<Button 
    android:id="@+id/confirm" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignLeft="@+id/userinput" 
    android:layout_centerVertical="true" 
    android:text="Add" /> 

回答

2

這是一個非常密集的問題,所以我會試着總結一下,你需要做什麼,你可以告訴我你是否需要幫助做任何事情。

您需要以編程方式在OnClick中添加視圖。在你的情況下,一個TextView和一個Button。在您剛剛創建的Button中,您需要從playerListOnClickListener中刪除TextView字符串。您還將從其父母中刪除View,以便用戶不再看到它。

爲了轉移到下一個Activity傳遞一個數組,你可以使用Bundle

Intent i = new Intent(this, NewActivity.class); 
Bundle extras = new Bundle(); 
extras.putSerializable("com.example.playerList", playerList); 
i.putExtras(extras); 
startActivity(i); 

,並可以通過新的活動讀取ArrayList

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    Bundle extras = getIntent().getExtras(); 
    ArrayList<String> playerLIst = extras.getSerializable("com.example.playerList"); 
} 
+0

好吧冷靜這就是有道理的,首先雖然我不需要讓用戶輸入的信息保存到一個數組,然後清除輸入框,一旦添加按鈕被點擊?我的代碼到目前爲止看起來如何? – Matt 2012-01-10 17:38:41

+0

lookin'good!我只是拿起你離開的地方 – 2012-01-10 18:20:19

+0

我們可以加入聊天嗎? – Matt 2012-01-11 11:35:01