NumberPicker wird nicht korrekt angezeigt

  • 2 Antworten
  • Letztes Antwortdatum
T

tom_tom_2401

Neues Mitglied
2
Hallo
Ich verwende mehrere NumberPicker in einem alertDialog zum Einlesen von Koordinaten. Diese NumberPicker werden zuerst in einem xml-file definiert und dann angezeigt. Ich hab jedoch das Problem, dass keine Werte angezigt werden, bzw der aktuelle Wert nur dann sichtbar wird, wenn man auf diesen klickt, die Tastatur sich öffnet und denselben markiert.
Drücke ich auf den OK Button, werden die eingestellten Werte jedoch korrekt zurück gegeben und verarbeitet (es sind auch die Werte, die ich erwarte)

Mittels folgender Methode öffne ich den alertDialog:
Code:
public void showDialog()
    {
         final Context context=getApplicationContext();
         final AlertDialog.Builder d = new AlertDialog.Builder(this);
         
         final NumberPicker np1, np2, np3, np4, np5, np6, np7, np8;
         final String abc[] = new String[] { "A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z" }; 
         final String zero_to_99[] = new String[100];
         //init string array
         for(int i=0; i<=99; i++)
            {
                zero_to_99[i] = Integer.toString(i);
                if(zero_to_99[i].length() == 1)
                    zero_to_99[i] = "0"+Integer.toString(i);
            }
         
         LayoutInflater layoutInflater = (LayoutInflater)getApplicationContext().getSystemService(LAYOUT_INFLATER_SERVICE);
         View view=layoutInflater.inflate(R.layout.dialog_pick_coord,null);
         
         String txt_title = context.getResources().getString(R.string.txt_head_search_coord);
         d.setTitle(txt_title);
         
         //Spalte
         np1 = (NumberPicker) view.findViewById(R.id.p1);
         np1.setMaxValue(60);     // max value 60
         np1.setMinValue(1);       // min value 1
         np1.setWrapSelectorWheel(false);
         
         //Zeile
         np2 = (NumberPicker) view.findViewById(R.id.p2);
         np2.setMaxValue(25);     // max value Z
         np2.setMinValue(0);       // min value A
         np2.setDisplayedValues( abc );
         np2.setWrapSelectorWheel(false);
         
         //100km Quadrat 1
         //np3
         
         //100km Quadrat 2
         //np4
         
         //Easting xx*
         //np5
         
         //Easting **x
         //np6
         
         //Northing xx*
         //np7
         
         //Northing **x
         //np8
         
         //Code für value Erzeugung aus aktueller Position
                  
         np1.setValue(utmCoordElements[0]);
         np2.setValue(utmCoordElements[1]);
         np3.setValue(utmCoordElements[2]);
         np4.setValue(utmCoordElements[3]);
         np5.setValue(utmCoordElements[4]);
         np6.setValue(utmCoordElements[5]);
         np7.setValue(utmCoordElements[6]);
         np8.setValue(utmCoordElements[7]);
         
         Log.w("NumberPicker","np1 min: "+np1.getMinValue());
         
         d.setPositiveButton(context.getResources().getString(R.string.Accept), new DialogInterface.OnClickListener() {
             public void onClick(DialogInterface dialog, int which) {
                 //Code für pos. btn
             }
         });
         
         d.setNegativeButton(context.getResources().getString(R.string.Cancel), new DialogInterface.OnClickListener() {
             public void onClick(DialogInterface dialog, int which) {
                 //Code für neg. btn
             }
         });     
           
         d.setView(view);
         d.show();
    }
Screenshot zur Verdeutlichung:

screenshot05-25n.jpeg

*klick für größere Ansicht*

Nicht durch die zusammenhängenden Linien verwirren lassen, das sind NumberPicker, die eng zusammen geschoben sind. Es sind insgesamt 8 Stück davon.

Was ist mein Fehler? Die min/max Werte werden korrekt gesetzt (kontrolle durch np1.getMinValue() etc.

Danke Thomas
 
Zuletzt bearbeitet:
Also für mich sieht es nach einem Farbenproblem aus.
Weiße Schrift auf weißem Hintergrund.
 
Danke, das stimmt (ich hätt selbst mal die Hintergrundfarbe auf schwarz stellen können) :p
Nur wie kann ich das Holo.Light Theme anwenden? Müsste jetzt das dunkle Holo Theme sein...

Grüße Thomas
 

Ähnliche Themen

K
Antworten
0
Aufrufe
337
kgott
K
Zurück
Oben Unten