package com.realtrackandroid.views.welcome; import java.util.List; import android.content.Intent; import android.content.SharedPreferences; import android.os.Bundle; import android.preference.PreferenceManager; import android.view.View; import android.widget.AdapterView; import android.widget.AdapterView.OnItemSelectedListener; import android.widget.ArrayAdapter; import android.widget.EditText; import android.widget.Spinner; import android.widget.Toast; import com.actionbarsherlock.app.SherlockActivity; import com.realtrackandroid.R; import com.realtrackandroid.backend.indicators.IndicatorsDAO; import com.realtrackandroid.common.StyledButton; /** * Start-up screen that asks PCV for his/her name + Post + Sector of their project * * @author Raj */ public class CollectPCVInfoActivity extends SherlockActivity implements OnItemSelectedListener { private List<String> projectList; private IndicatorsDAO iDao; private ArrayAdapter<String> projectDataAdapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_collectpcvinfo); } @Override public void onResume() { super.onResume(); iDao = new IndicatorsDAO(this); final EditText nameEditText = (EditText) findViewById(R.id.nameEditText); final Spinner postSpinner = (Spinner) findViewById(R.id.postSpinner); List<String> postList = iDao.getAllPosts(); ArrayAdapter<String> postDataAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, postList); postDataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); postSpinner.setAdapter(postDataAdapter); postSpinner.setOnItemSelectedListener(this); final Spinner projectSpinner = (Spinner) findViewById(R.id.projectSpinner); projectList = iDao.getAllSectors(); projectDataAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, projectList); projectDataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); projectSpinner.setAdapter(projectDataAdapter); StyledButton submitButton = (StyledButton) findViewById(R.id.submitbutton); submitButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (nameEditText.getText().length() == 0) { Toast.makeText(CollectPCVInfoActivity.this, "Please enter your name", Toast.LENGTH_SHORT) .show(); return; } SharedPreferences prefs = PreferenceManager .getDefaultSharedPreferences(CollectPCVInfoActivity.this); SharedPreferences.Editor editor = prefs.edit(); editor.putString(getString(R.string.name), nameEditText.getText().toString()); editor.putString(getString(R.string.post), postSpinner.getSelectedItem().toString()); editor.putString(getString(R.string.project), projectSpinner.getSelectedItem().toString()); editor.commit(); overridePendingTransition(R.anim.animation_slideinleft, R.anim.animation_slideoutright); Intent i = new Intent(CollectPCVInfoActivity.this, WelcomeActivity.class); i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); CollectPCVInfoActivity.this.startActivity(i); CollectPCVInfoActivity.this.onBackPressed(); } }); } @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { switch (parent.getId()) { case R.id.postSpinner: // if the post changes, update the associated sectors String selectedPost = parent.getItemAtPosition(position).toString(); List<String> newProjects = iDao.getAllProjectsForPost(selectedPost); projectList.clear(); projectList.addAll(newProjects); projectDataAdapter.notifyDataSetChanged(); break; } } @Override public void onNothingSelected(AdapterView<?> parent) { } @Override public void onBackPressed() { super.onBackPressed(); overridePendingTransition(R.anim.animation_slideinleft, R.anim.animation_slideoutright); finish(); } }