Slideshow

Tuesday, July 26, 2011

Android Spinner : add item dynamically

package sample.HelloSpinner;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.Toast;
import android.widget.AdapterView.OnItemSelectedListener;

public class HelloSpinner extends Activity {
/** Called when the activity is first created. */

private EditText m_addItemText;
private ArrayAdapter m_adapterForSpinner;
private Spinner m_myDynamicSpinner;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

m_myDynamicSpinner = (Spinner)findViewById(R.id.spinnerList);
m_addItemText = (EditText)findViewById(R.id.editTextItem);
Button addButton = (Button)findViewById(R.id.buttonAddItem);
Button clearButton = (Button)findViewById(R.id.buttonClearList);

m_adapterForSpinner = new ArrayAdapter(this, android.R.layout.simple_spinner_item);
m_adapterForSpinner.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
m_myDynamicSpinner.setAdapter(m_adapterForSpinner);
m_adapterForSpinner.add("dummy item");

addButton.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
addNewSpinnerItem();
}
});

clearButton.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
clearSpinnerItems();
}
});



}
private void addNewSpinnerItem() {
CharSequence textHolder = "" + m_addItemText.getText();
m_adapterForSpinner.add(textHolder);
}

private void clearSpinnerItems() {
m_adapterForSpinner.clear();
m_adapterForSpinner.add("dummy item");
}
public class MyOnItemSelectedListener implements OnItemSelectedListener {

public void onItemSelected(AdapterView parent,
View view, int pos, long id) {

m_addItemText.setText((CharSequence)parent.getItemAtPosition(pos).toString());
}

public void onNothingSelected(AdapterView parent) {
// Do nothing.
}
}

}


0 comments:

Post a Comment