我想顯示數組中的播放器名稱到列表視圖中。這是我的代碼:android(java)的數組和列表視圖
player_List.setAdapter(new ArrayAdapter<Player>(this, android.R.layout.simple_list_item_1, dataStore.getPlayers()));
即時得到使用此調用數組中的所有信息。我不確定如何叫這個名字。
這是我的數據存儲的編碼:
/**
* This class is essentially a global library for the Scoresheet.
* It provides methods through which the Players and Teams can be accessed
* from any part of the application.
* The saving/loading of application data will also be handled through this
* class.
*
* You can access this DataStore by calling:
* DataStore dataStore = ((DataStore)getApplicationContext());
* From any Activity
*/
public class DataStore extends Application {
// Create ArrayLists to hold all our Player and Team objects
private ArrayList<Player> players = new ArrayList<Player>();
private ArrayList<Team> teams = new ArrayList<Team>();
// File names for our internal storage:
private String playerFileName = "players";
private String teamFileName = "teams";
/**
* Add a Player object to the list of players.
* @param p The Player object to add
*/
public void addPlayer(Player p){
this.players.add(p);
}
/**
* Merge an ArrayList of Player objects with the current collection of Players
* @param players ArrayList of Player objects to add to the collection
*/
public void addPlayers(ArrayList<Player> players){
Iterator<Player> it = players.iterator();
while (it.hasNext()){
this.players.add(it.next());
}
}
/**
* Return an ArrayList of player objects containing all Players
* @return
*/
public ArrayList<Player> getPlayers(){
return this.players;
}
,這是我的播放器類:
public class Player implements Serializable{
// Randomly generate serial ID
private static final long serialVersionUID = 7423594865734681292L;
private static int ID = 0; // Class variable
public String name;
private int id;
public Player(String name) throws Exception{
this.setId(ID);
ID++; // Increment class ID counter
if (!this.setName(name))
throw new Exception("Invalid Name"); // This is the only way to prevent the object being instantiated if it has an invalid name
}
public String getName() {
return name;
}
/**
* Set the players name as desired.
* @param name
* @return true on success, false on fail
*/
public boolean setName(String name) {
// Only update the name if we are actually given a string
boolean success = false;
name = name.trim();
if (!name.equals("")){
this.name = name;
success = true;
}
return success;
}
public int getId() {
return id;
}
private void setId(int id) {
this.id = id;
}
}
所以基本上你可以創建一個播放器即。在文件中輸入玩家名稱。我想在列表視圖中顯示玩家的名字。所以每次打開應用程序時,以前保存的所有玩家名稱都可以在列表視圖中看到。 – 2012-04-06 06:29:19
但不知道如何做到這一點作爲代碼我有像「[email protected]」 – 2012-04-06 06:33:31
「我不知道這是什麼(」[email protected]「)的地方信息?'但做出一些努力我給你的解決方案的路徑,並試圖瞭解上面的兩個鏈接的例子 – 2012-04-06 06:56:18