Como introducir datos dinamicos a un Spinner

3,252 views
Skip to first unread message

vencedor77

unread,
Jul 6, 2010, 5:48:06 PM7/6/10
to desarrolladores-android
Dios les bendiga a TODOS, quisiera por favor que alguien me oriente a
ver como se pude agregar datos de un EditText a un spinner. Hasta
ahora los ejemplos que he visto para poblar un spinner es con arreglos
estaticos no con dinamicos y me gustaria que alguien me ayudase...

JJ

unread,
Jul 6, 2010, 6:10:00 PM7/6/10
to desarrollad...@googlegroups.com
Hola.

Perdona mi desconocimiento, tampoco es que sea un gran programador o sepa mucho....

¿Qué es un spinner?

:-((




--
Has recibido este mensaje porque estás suscrito al grupo "desarrolladores-android" de Grupos de Google.
Para publicar una entrada en este grupo, envía un correo electrónico a desarrollad...@googlegroups.com.
Para anular tu suscripción a este grupo, envía un correo electrónico a desarrolladores-a...@googlegroups.com
Para tener acceso a más opciones, visita el grupo en http://groups.google.com/group/desarrolladores-android?hl=es.


Keylon Duran

unread,
Jul 6, 2010, 6:31:50 PM7/6/10
to desarrollad...@googlegroups.com
 
Eso es un spiner donde hay varios elementos para seleccionar
 
--
__________________________________
GOD BLESS YOU FROM:
Keylon Duran Paulino

Jose Luis Montes

unread,
Jul 6, 2010, 6:37:34 PM7/6/10
to desarrollad...@googlegroups.com
en principio si a esos arreglos (arrays o listas por aqui por españa) los modificas (añades o eliminas elementos), con llamar al .notifyDataSetChanged() del adapter del spinner ya debería recargar los elementos de ese "arreglo"

Prueba y nos cuentas...

Saludos!

2010/7/6 vencedor77 <godli...@gmail.com>

Keylon Duran

unread,
Jul 6, 2010, 8:05:38 PM7/6/10
to desarrollad...@googlegroups.com
a la verdad que no te entendi... he logrado agregar un dato desde un spinner , pero ahora  solo se me agregar uno solo no todos los que pongo... sabe alguien como hacerlo?
 
 
 
este es el codigo para agregar un elemento desde un edit Text
 
 

String[] NSOS_arreglo=

new String[] {myEditText.getText().toString()};

ArrayAdapter<String> adapter2 =

new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,NSOS_arreglo);

adapter2.setDropDownViewResource(android.R.layout.

simple_spinner_dropdown_item);

mySpinner.setAdapter(adapter2);

Jose Luis Montes

unread,
Jul 7, 2010, 2:34:51 AM7/7/10
to desarrollad...@googlegroups.com
pues lo que tendrías que hacer es hacer un 

adapter2.add("nuevo elemento en el spinner"); 

o llamarlo tantas veces como te haga falta y luego llamar al 

adapter2.notifySetDataSetChanged();

Algo así, lo estoy escribiendo de cabeza ahora mismo...

lo mismo te digo... prueba y nos cuentas ;)

2010/7/7 Keylon Duran <godli...@gmail.com>

Keylon Duran

unread,
Jul 7, 2010, 5:15:54 AM7/7/10
to desarrollad...@googlegroups.com
bueno,,, trate de hacerlo asi , pero al correr la aplicacion se cierra inesperadamente...

Jose Luis Montes

unread,
Jul 7, 2010, 5:22:06 PM7/7/10
to desarrollad...@googlegroups.com
y que te da el log???



2010/7/7 Keylon Duran <godli...@gmail.com>

Keylon Duran

unread,
Jul 7, 2010, 5:39:49 PM7/7/10
to desarrollad...@googlegroups.com
Eso...
 
 
07-07 21:36:40.588: ERROR/AndroidRuntime(1410): Uncaught handler: thread main exiting due to uncaught exception
07-07 21:36:40.648: ERROR/AndroidRuntime(1410): java.lang.UnsupportedOperationException
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at java.util.AbstractList.add(AbstractList.java:410)
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at java.util.AbstractList.add(AbstractList.java:432)
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at android.widget.ArrayAdapter.add(ArrayAdapter.java:178)
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at org.tesis.SOSMobileR1.vista_confi_nsos.guardar(vista_confi_nsos.java:116)
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at org.tesis.SOSMobileR1.vista_confi_nsos.onClick(vista_confi_nsos.java:78)
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at android.view.View.performClick(View.java:2344)
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at android.view.View.onTouchEvent(View.java:4133)
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at android.view.View.dispatchTouchEvent(View.java:3672)
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:882)
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:882)
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:882)
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:882)
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:882)
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:882)
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1712)
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1202)
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at android.app.Activity.dispatchTouchEvent(Activity.java:1987)
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1696)
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at android.view.ViewRoot.handleMessage(ViewRoot.java:1658)
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at android.os.Handler.dispatchMessage(Handler.java:99)
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at android.os.Looper.loop(Looper.java:123)
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at android.app.ActivityThread.main(ActivityThread.java:4203)
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at java.lang.reflect.Method.invokeNative(Native Method)
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at java.lang.reflect.Method.invoke(Method.java:521)
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:791)
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:549)
07-07 21:36:40.648: ERROR/AndroidRuntime(1410):     at dalvik.system.NativeStart.main(Native Method)


Jose Luis Montes

unread,
Jul 7, 2010, 5:44:37 PM7/7/10
to desarrollad...@googlegroups.com
pues ahora mismo me pillas un poco en este punto... Unsupported Operation Exception... estoy imaginando... pero... parece que estas llamando a un metodo que no deberías... puede ser?

a ver si alguien puede echarte un cable...

2010/7/7 Keylon Duran <godli...@gmail.com>

Keylon Duran

unread,
Jul 8, 2010, 7:40:09 AM7/8/10
to desarrollad...@googlegroups.com
Saludos aqui esta lo que he hecho,,,, pero no se aun porque se me cierra inesperadamente,,, aun no se interpretar el logcat...
 
lo que busco para recordar... es agregarle datos a un spinner digitados por un edittext.. he logrado agregarle uno solo pero cuando trato de usar los metodos add(), insert() de la clase ArrayAdapter me da errores... si alguien pudiera darme una mano se lo agradeceria...
 
  //Atributos globales

String[]

NSOSs = getResources().getStringArray(R.array.Numeros_TelefonicosSOS
);//es un arreglo creado en xml de 6 elementos...

ArrayAdapter<String>

Adapt_NSOSs = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,NSOSs);

String

NSOS_digitado="";

int i=0;//indice para recorrer el arreglo
 
 

public

void onClick(View Boton_pulsado) {

 

switch (Boton_pulsado.getId()) {

//Boton Agregar numero SOS digitado

case R.id.IButton_Agregar:

//

NSOS_digitado= MyEditTex.getText().toString();//se toma el exto digitado por el editText

if (i<NSOSs.length){

Adapt_NSOSs.insert(NSOS_digitado,i);

Adapt_NSOSs.notifyDataSetChanged();

Myspinner.setAdapter(Adapt_NSOSs);

i++;

}

Toast.makeText(

this, R.string.TextActivado, Toast.LENGTH_LONG).show();

// startActivity(new Intent(this, vista_confi_nsos.class));

break;

......
 
 
 
Logcat 
 
07-08 11:21:46.984: ERROR/AndroidRuntime(927): Uncaught handler: thread main exiting due to uncaught exception
07-08 11:21:47.043: ERROR/AndroidRuntime(927): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{org.tesis.SOSMobileR1/org.tesis.SOSMobileR1.vista_confi_nsos}: java.lang.NullPointerException
07-08 11:21:47.043: ERROR/AndroidRuntime(927):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2324)
07-08 11:21:47.043: ERROR/AndroidRuntime(927):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2417)
07-08 11:21:47.043: ERROR/AndroidRuntime(927):     at android.app.ActivityThread.access$2100(ActivityThread.java:116)
07-08 11:21:47.043: ERROR/AndroidRuntime(927):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1794)
07-08 11:21:47.043: ERROR/AndroidRuntime(927):     at android.os.Handler.dispatchMessage(Handler.java:99)
07-08 11:21:47.043: ERROR/AndroidRuntime(927):     at android.os.Looper.loop(Looper.java:123)
07-08 11:21:47.043: ERROR/AndroidRuntime(927):     at android.app.ActivityThread.main(ActivityThread.java:4203)
07-08 11:21:47.043: ERROR/AndroidRuntime(927):     at java.lang.reflect.Method.invokeNative(Native Method)
07-08 11:21:47.043: ERROR/AndroidRuntime(927):     at java.lang.reflect.Method.invoke(Method.java:521)
07-08 11:21:47.043: ERROR/AndroidRuntime(927):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:791)
07-08 11:21:47.043: ERROR/AndroidRuntime(927):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:549)
07-08 11:21:47.043: ERROR/AndroidRuntime(927):     at dalvik.system.NativeStart.main(Native Method)
07-08 11:21:47.043: ERROR/AndroidRuntime(927): Caused by: java.lang.NullPointerException
07-08 11:21:47.043: ERROR/AndroidRuntime(927):     at android.content.ContextWrapper.getResources(ContextWrapper.java:80)
07-08 11:21:47.043: ERROR/AndroidRuntime(927):     at org.tesis.SOSMobileR1.vista_confi_nsos.<init>(vista_confi_nsos.java:34)
07-08 11:21:47.043: ERROR/AndroidRuntime(927):     at java.lang.Class.newInstanceImpl(Native Method)
07-08 11:21:47.043: ERROR/AndroidRuntime(927):     at java.lang.Class.newInstance(Class.java:1472)
07-08 11:21:47.043: ERROR/AndroidRuntime(927):     at android.app.Instrumentation.newActivity(Instrumentation.java:1097)
07-08 11:21:47.043: ERROR/AndroidRuntime(927):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2316)
07-08 11:21:47.043: ERROR/AndroidRuntime(927):     ... 11 more

Jose Luis Montes

unread,
Jul 8, 2010, 7:57:27 AM7/8/10
to desarrollad...@googlegroups.com
buenas,

Myspinner.setAdapter(Adapt_NSOSs);

deberías hacerlo una sola vez y en el metodo onCreate de la activity en la que te encuentras. Con que lo dejes puesto una sola vez es suficiente.

modifica eso y mira a ver que tal...



2010/7/8 Keylon Duran <godli...@gmail.com>

Keylon Duran

unread,
Jul 8, 2010, 10:25:05 AM7/8/10
to desarrollad...@googlegroups.com
saludos hice lo que me dijiste pero aun asi continua el problema, ahora no me deja ni siquiera abrir la vista donde esta el spinner ni el edit text....
Reply all
Reply to author
Forward
0 new messages