# HG changeset patch # User Xeli # Date 1313948401 -7200 # Node ID ce2d92589cbc413af20a573b61aee84ed5449969 # Parent 9add7b92c5f08ceb76bb93763061f35672f943fc Added a visual imageview to show how many teams have been selected, plus feedback when creating a new team: diff -r 9add7b92c5f0 -r ce2d92589cbc project_files/Android-build/SDL-android-project/res/layout/starting_game.xml --- a/project_files/Android-build/SDL-android-project/res/layout/starting_game.xml Sun Aug 21 18:14:49 2011 +0200 +++ b/project_files/Android-build/SDL-android-project/res/layout/starting_game.xml Sun Aug 21 19:40:01 2011 +0200 @@ -125,16 +125,32 @@ android:background="@drawable/dropdown"/> + + + + + + hogs; private boolean settingsChanged = false; private boolean saved = false; @@ -89,7 +88,6 @@ back.setOnClickListener(backClicker); LinearLayout ll = (LinearLayout) findViewById(R.id.HogsContainer); - hogs = new ArrayList(ll.getChildCount()); for (int i = 0; i < ll.getChildCount(); i++) { RelativeLayout team_creation_entry = (RelativeLayout) ll .getChildAt(i); @@ -236,7 +234,7 @@ private OnClickListener saveClicker = new OnClickListener() { public void onClick(View v) { - Toast.makeText(TeamCreatorActivity.this, R.string.saved, Toast.LENGTH_SHORT); + Toast.makeText(TeamCreatorActivity.this, R.string.saved, Toast.LENGTH_SHORT).show(); saved = true; Team team = new Team(); team.name = name.getText().toString(); diff -r 9add7b92c5f0 -r ce2d92589cbc project_files/Android-build/SDL-android-project/src/org/hedgewars/mobile/TeamSelectionActivity.java --- a/project_files/Android-build/SDL-android-project/src/org/hedgewars/mobile/TeamSelectionActivity.java Sun Aug 21 18:14:49 2011 +0200 +++ b/project_files/Android-build/SDL-android-project/src/org/hedgewars/mobile/TeamSelectionActivity.java Sun Aug 21 19:40:01 2011 +0200 @@ -48,12 +48,11 @@ public class TeamSelectionActivity extends Activity{ private static final int ACTIVITY_TEAMCREATION = 0; - + private ImageButton addTeam, back; private ListView availableTeams, selectedTeams; private ArrayList> availableTeamsList, selectedTeamsList; private TextView txtInfo; - private int minTeams = 2; public void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); @@ -62,8 +61,8 @@ addTeam = (ImageButton) findViewById(R.id.btnAdd); back = (ImageButton) findViewById(R.id.btnBack); - txtInfo = (TextView) findViewById(R.id.txtInfo); - + txtInfo = (TextView) findViewById(R.id.txtInfo); + addTeam.setOnClickListener(addTeamClicker); back.setOnClickListener(backClicker); @@ -120,14 +119,14 @@ super.onActivityResult(requestCode, resultCode, data); } } - + private void updateListViews(){ unregisterForContextMenu(availableTeams); availableTeamsList = FrontendDataUtils.getTeams(this); ArrayList> toBeRemoved = new ArrayList>(); for(HashMap hashmap : selectedTeamsList){ String name = (String)hashmap.get("txt"); - + for(HashMap hash : availableTeamsList){ if(name.equals((String)hash.get("txt"))){ toBeRemoved.add(hash); @@ -135,15 +134,15 @@ } } for(HashMap hash: toBeRemoved) availableTeamsList.remove(hash); - + SimpleAdapter adapter = new SimpleAdapter(this, availableTeamsList, R.layout.team_selection_entry, new String[]{"txt", "img"}, new int[]{R.id.txtName, R.id.imgDifficulty}); availableTeams.setAdapter(adapter); registerForContextMenu(availableTeams); availableTeams.setOnItemClickListener(availableClicker); - - + + } - + private void setTeamColor(int position, int color){ View iv = ((RelativeLayout)selectedTeams.getChildAt(position)).findViewById(R.id.teamCount); setTeamColor(iv, color); @@ -222,7 +221,7 @@ selectedTeamsList.remove(position); ((SimpleAdapter)availableTeams.getAdapter()).notifyDataSetChanged(); ((SimpleAdapter)selectedTeams.getAdapter()).notifyDataSetChanged(); - + txtInfo.setText(String.format(getResources().getString(R.string.teams_info_template), selectedTeamsList.size())); } @@ -267,27 +266,24 @@ t.setRandomColor(illegalcolors); hash.put("color", t.color); hash.put("count", t.hogCount); - + selectedTeamsList.add(hash); availableTeamsList.remove(position); ((SimpleAdapter)availableTeams.getAdapter()).notifyDataSetChanged(); ((SimpleAdapter)selectedTeams.getAdapter()).notifyDataSetChanged(); - + txtInfo.setText(String.format(getResources().getString(R.string.teams_info_template), selectedTeamsList.size())); } private void returnTeams(){ int teamsCount = selectedTeamsList.size(); - if(teamsCount >= minTeams){ - Intent i = new Intent(); - Parcelable[] teams = new Parcelable[teamsCount]; - for(int x = 0 ; x < teamsCount; x++){ - teams[x] = (Team)selectedTeamsList.get(x).get("team"); - } - i.putExtra("teams", teams); - setResult(Activity.RESULT_OK, i); - }else{ - setResult(Activity.RESULT_CANCELED); + Intent i = new Intent(); + Parcelable[] teams = new Parcelable[teamsCount]; + for(int x = 0 ; x < teamsCount; x++){ + teams[x] = (Team)selectedTeamsList.get(x).get("team"); } + i.putExtra("teams", teams); + setResult(Activity.RESULT_OK, i); + } }