2016-04-14 13 views
1

Ich habe den NumberPicker angepasst, um Text anzuzeigen. Die Ausgabe ist dies: ThisAndroid NumberPicker mit Strings

Wenn ich OK drücke, möchte ich die e.x-Maus zu meiner Liste "Artikel" hinzufügen. Was ich stattdessen bekomme, ist der Indexwert (int).

Es wird von "array []" aufgefüllt, es enthält eine Liste mit den angezeigten Daten. Was ist die Problemumgehung, um mein Element/String zu bekommen?

public void Generatortable(){ 

      final android.support.v7.app.AlertDialog.Builder alert = new android.support.v7.app.AlertDialog.Builder(this); 
      alert.setCancelable(false); 

      LinearLayout l1 = new LinearLayout(getApplicationContext());    

      l1.setOrientation(LinearLayout.HORIZONTAL);    

      final NumberPicker artikkler = new NumberPicker(this);     

      String array[] = new String[responseList.size()]; 
      for(int j =0;j<responseList.size();j++){ 
       array[j] = responseList.get(j); 
      } 
      artikkler.setMaxValue(responseList.size() - 1); 
      artikkler.setMinValue(0); 
      artikkler.setDisplayedValues(array); 
      artikkler.setWrapSelectorWheel(true);   

      l1.addView(artikkler);    

      alert.setView(l1);  

      alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() { 

       public void onClick(DialogInterface dialog, int whichButton) {  
        Article.add(String.valueOf(artikkler.getValue())); 

        lviewAdapter.notifyDataSetChanged(); 
        lview.setAdapter(lviewAdapter); 
       } 
      }); 

      alert.setNegativeButton("Cancel", new DialogInterface.OnClickListener() { 
       public void onClick(DialogInterface dialog, int whichButton) { 
        // Canceled. 
       } 
      });  

      alert.show(); 
     } 

Antwort

2

Ändern Sie die Zeile

Article.add(String.valueOf(artikkler.getValue())); 

von

Article.add(responseList.get(artikkler.getValue()); 
+0

Sie sind willkommen! :) –

Verwandte Themen