14.01.2013 Views

Android™ Application Development - Bahar Ali Khan

Android™ Application Development - Bahar Ali Khan

Android™ Application Development - Bahar Ali Khan

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Chapter 9: Peer-to-Peer Communication<br />

5. Update onCreate further to get references to each of the controls in the layout and wire up the<br />

Spinner using the arrays defi ned in Step 3. Create two new stub methods, savePreferences<br />

and updateUIFromPreferences, that will be updated to save the auto-responder settings<br />

to a named SharedPreference and apply the saved SharedPreferences to the current UI,<br />

respectively.<br />

Spinner respondForSpinner;<br />

CheckBox locationCheckbox;<br />

EditText responseTextBox;<br />

@Override<br />

public void onCreate(Bundle icicle) {<br />

super.onCreate(icicle);<br />

setContentView(R.layout.autoresponder);<br />

5.1. Start by getting references to each View.<br />

respondForSpinner = (Spinner)findViewById(R.id.spinnerRespondFor);<br />

locationCheckbox = (CheckBox)findViewById(R.id.checkboxLocation);<br />

responseTextBox = (EditText)findViewById(R.id.responseText);<br />

5.2. Populate the Spinner to let users select the auto-responder expiry time.<br />

ArrayAdapter adapter = ArrayAdapter.createFromResource(<br />

this,<br />

R.array.respondForDisplayItems,<br />

android.R.layout.simple_spinner_item);<br />

adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);<br />

respondForSpinner.setAdapter(adapter);<br />

5.3. Now wire up the OK and Cancel buttons to let users save or cancel setting changes.<br />

Button okButton = (Button) findViewById(R.id.okButton);<br />

okButton.setOnClickListener(new View.OnClickListener() {<br />

public void onClick(View view) {<br />

savePreferences();<br />

setResult(RESULT_OK, null);<br />

finish();<br />

}<br />

});<br />

Button cancelButton = (Button) findViewById(R.id.cancelButton);<br />

cancelButton.setOnClickListener(new View.OnClickListener() {<br />

public void onClick(View view) {<br />

respondForSpinner.setSelection(-1);<br />

savePreferences();<br />

setResult(RESULT_CANCELED, null);<br />

finish();<br />

}<br />

});<br />

309

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!