Autore Topic: adapter e list view  (Letto 707 volte)

Offline gaiapuffo

  • Nuovo arrivato
  • *
  • Post: 8
  • Respect: 0
    • Mostra profilo
adapter e list view
« il: 19 Maggio 2013, 19:10:44 CEST »
0
Ho un problema,quello che voglio fare e che in caso di un evento aggiungo un elemento alla lista.Quindi nell'oncreate faccio

ListView lista=(ListView)this.findViewById(R.id.listView1);
      
       ArrayAdapter<String> adapter =
             new ArrayAdapter<String>(this,
             android.R.layout.simple_list_item_1)
             ;
       lista.setAdapter(adapter);
       lista.setVisibility(View.VISIBLE);


poi nella funzione evento

adapter.add(name);

il tutto mi da errore
             

Offline rs94

  • Utente normale
  • ***
  • Post: 227
  • Respect: +21
    • Mostra profilo
  • Dispositivo Android:
    Sony Ericsson Xperia Arc S
  • Sistema operativo:
    Windows 8
Re:adapter e list view
« Risposta #1 il: 19 Maggio 2013, 19:53:25 CEST »
0
Ti da errore quando avvii l'app o ancora prima di compilare? Posta codice e logcat :)
L'unica certezza è il dubbio.
Dubitare di se stessi è il primo segno di intelligenza.

Offline gaiapuffo

  • Nuovo arrivato
  • *
  • Post: 8
  • Respect: 0
    • Mostra profilo
Re:adapter e list view
« Risposta #2 il: 19 Maggio 2013, 20:25:16 CEST »
0
mi da errore quando attivo il bottone

protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.tel);
      ActionBar ab = getActionBar();
       ab.setHomeButtonEnabled(true);
       ab.setDisplayHomeAsUpEnabled(true);
       String values[]=null;
       ListView lista=(ListView)this.findViewById(R.id.listView1);
      
       ArrayAdapter<String> adapter =
             new ArrayAdapter<String>(this,
             android.R.layout.simple_list_item_1
             );
       lista.setAdapter(adapter);
       lista.setVisibility(View.VISIBLE);
       final int var=0;
       Button telefono=(Button)this.findViewById(R.id.button_add_contact);
       telefono.setOnClickListener(new View.OnClickListener() {
              public void onClick(View v) {
                //prendi parola database e mettila in name
                         adapter.add(name);


              
             
                
                
        }});    
   }
   
   

Post unito: 19 Maggio 2013, 20:26:17 CEST
praticamente togli quello che fa il controllo,creo la lista poi ogni volta che clicco sul bottone dovrebbe fare l'aggiunta, se tolgo

adapter.add l'app funziona ma non viene messo l'elemento,se lo metto mi da errore...

Post unito: 19 Maggio 2013, 20:45:32 CEST
05-19 20:43:32.788: E/AndroidRuntime(7096): java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=0, result=-1, data=Intent { dat=content://com.android.contacts/contacts/lookup/1647ide109f30d94344d/34 flg=0x1 }} to activity {com.example.hide/com.example.hide.Telefono}: java.lang.NullPointerException
05-19 20:43:32.788: E/AndroidRuntime(7096):    at android.app.ActivityThread.deliverResults(ActivityThread.java:3205)
05-19 20:43:32.788: E/AndroidRuntime(7096):    at android.app.ActivityThread.handleSendResult(ActivityThread.java:3248)
05-19 20:43:32.788: E/AndroidRuntime(7096):    at android.app.ActivityThread.access$1200(ActivityThread.java:140)
05-19 20:43:32.788: E/AndroidRuntime(7096):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1285)
05-19 20:43:32.788: E/AndroidRuntime(7096):    at android.os.Handler.dispatchMessage(Handler.java:99)
05-19 20:43:32.788: E/AndroidRuntime(7096):    at android.os.Looper.loop(Looper.java:137)
05-19 20:43:32.788: E/AndroidRuntime(7096):    at android.app.ActivityThread.main(ActivityThread.java:4921)
05-19 20:43:32.788: E/AndroidRuntime(7096):    at java.lang.reflect.Method.invokeNative(Native Method)
05-19 20:43:32.788: E/AndroidRuntime(7096):    at java.lang.reflect.Method.invoke(Method.java:511)
05-19 20:43:32.788: E/AndroidRuntime(7096):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1027)
05-19 20:43:32.788: E/AndroidRuntime(7096):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:794)
05-19 20:43:32.788: E/AndroidRuntime(7096):    at dalvik.system.NativeStart.main(Native Method)
05-19 20:43:32.788: E/AndroidRuntime(7096): Caused by: java.lang.NullPointerException
05-19 20:43:32.788: E/AndroidRuntime(7096):    at com.example.hide.Telefono.onActivityResult(Telefono.java:71)
05-19 20:43:32.788: E/AndroidRuntime(7096):    at android.app.Activity.dispatchActivityResult(Activity.java:5390)
05-19 20:43:32.788: E/AndroidRuntime(7096):    at android.app.ActivityThread.deliverResults(ActivityThread.java:3201)


Post unito: 19 Maggio 2013, 20:51:14 CEST
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
     <TextView
       android:id="@+id/title_telephone"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:layout_alignParentTop="true"
       android:layout_centerHorizontal="true"
       android:layout_marginTop="26dp"
       android:text="@string/title_telephone"
       android:textSize="18dp"
       android:textStyle="italic" />

     <TextView
         android:id="@+id/title_telephone2"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:layout_alignLeft="@+id/title_telephone"
         android:layout_below="@+id/title_telephone"
         android:text="@string/title_telephone2"
         android:textSize="18dp"
         android:textStyle="italic" />

        <Button
            android:id="@+id/button_add_contact"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignLeft="@+id/title_telephone"
            android:layout_below="@+id/button_service_tel"
            android:layout_marginTop="27dp"
            android:text="@string/title_activity_rubrica" />

        <EditText
            android:id="@+id/editText1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:ems="10"
            android:text="@string/insert_number" />

        <Button
            android:id="@+id/button_service_tel"
            android:layout_width="125dp"
            android:layout_height="60dp"
            android:layout_marginTop="36dp"
            android:text="@string/active_service" />
           
              <ListView
                  android:id="@+id/listView1"
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
                  android:layout_below="@+id/button_add_contact" >
               </ListView>
     
</LinearLayout>
« Ultima modifica: 19 Maggio 2013, 20:51:14 CEST da gaiapuffo, Reason: Merged DoublePost »

Offline bradipao

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 4043
  • keep it simple
  • Respect: +567
    • Github
    • Google+
    • bradipao
    • Mostra profilo
  • Dispositivo Android:
    Nexus 5
  • Play Store ID:
    Bradipao
  • Sistema operativo:
    W7
Re:adapter e list view
« Risposta #3 il: 20 Maggio 2013, 09:19:44 CEST »
0
Citazione
05-19 20:43:32.788: E/AndroidRuntime(7096): Caused by: java.lang.NullPointerException
05-19 20:43:32.788: E/AndroidRuntime(7096):    at com.example.hide.Telefono.onActivityResult(Telefono.java:71)

Alla riga 71 di Telefono.java hai qualcosa di NULL.


PS: quando copi del codice, java o xml, mettilo dentro i tag per formattarlo:
NON rispondo a domande nei messaggi privati
Bradipao @ Play Store

Offline gaiapuffo

  • Nuovo arrivato
  • *
  • Post: 8
  • Respect: 0
    • Mostra profilo
Re:adapter e list view
« Risposta #4 il: 20 Maggio 2013, 11:56:55 CEST »
0
praticamente il mio problema e che non voglio mettere subito i valori nell'adapter,ma voglio metterli man mano e questo mi causa l'errore perchè credo che quando faccio

adapter.add mi da errore e credo che sia causato dalla precedente inizializzazione

Post unito: 20 Maggio 2013, 11:58:28 CEST
public class FooList extends ListActivity {
    String[] listItems = {"item 1", "item 2 ", "list", "android", "item 3", "foobar", "bar", };
    @Override
     public void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.temp);
         setListAdapter(new ArrayAdapter(this,  android.R.layout.simple_list_item_1, listItems));
     }

io invece non voglio metterci subito listitems
« Ultima modifica: 20 Maggio 2013, 11:58:28 CEST da gaiapuffo, Reason: Merged DoublePost »

Offline rs94

  • Utente normale
  • ***
  • Post: 227
  • Respect: +21
    • Mostra profilo
  • Dispositivo Android:
    Sony Ericsson Xperia Arc S
  • Sistema operativo:
    Windows 8
Re:adapter e list view
« Risposta #5 il: 20 Maggio 2013, 13:06:24 CEST »
0
Te lo hanno già detto, usa i tag per inserire nel post codice java o xml... Guarda il precedente post di bradipao...

Detto questo, posta la linea 71 del file Telefono.java perchè c'è una nullpointer exception
L'unica certezza è il dubbio.
Dubitare di se stessi è il primo segno di intelligenza.

Offline zorcraft

  • Utente junior
  • **
  • Post: 108
  • Respect: +5
    • Mostra profilo
  • Dispositivo Android:
    note
  • Play Store ID:
    zorcraft
Re:adapter e list view
« Risposta #6 il: 20 Maggio 2013, 14:37:36 CEST »
0
fossi in te proverei a fare un Log.v del valore che prendi dal database prima di aggiungerlo giusto per essere sicuro che tu lo prelevi dal db