//

de waarde van een textfield omzetten naar een double

de waarde van een textfield omzetten naar een double discussie in Ontwikkelen voor iOS forum; ( verdwijnt na registratie ) Ik heb een textfield (Outlet = aankoopPrijsLabel) in mijn app. Ik heb het keyboard van dit textfield ingesteld als 'Decimal pad'. in mijn code gebruik ...



Ga terug   iPhone, iPod touch, iPad en Apple TV forum > Development > Ontwikkelen voor iOS
Wachtwoord vergeten? Registreren!
Registreer FAQ Ledenlijst Kalender Berichten van vandaag

Reageren

 

Discussietools Weergave
  #1  
Oud 12-02-13, 19:06
brub brub is offline
• iOS 7.1.1
• 7.1.1
• Besturingssysteem: Mac OS X
 
Geregistreerd: Sep 2011
Berichten: 23
Standaard de waarde van een textfield omzetten naar een double

Ik heb een textfield (Outlet = aankoopPrijsLabel) in mijn app.

Ik heb het keyboard van dit textfield ingesteld als 'Decimal pad'.

in mijn code gebruik ik de volgende regel:
double test = [self.aankoopPrijsLabel.text doubleValue];

als ik de app run is de waarde verschillend afhankelijk of ik de iPhone simulator of de iPhone gebruik.

Voorbeeld:
ik geef 7.11 in en krijg in de simulator 7.11 als test (dit is OK)

ik geef 7,11 in en krijg in de simulator 7.00 als test (dit is niet OK)

het enige verschil dat ik kan opmerken is dat bij het ingeven op de iPhone de decimale waardes met een komma geplaatst worden.

iemand een idee hoe ik dit kan oplossen?

Bedankt
Advertentie
Advertentie Gesponsorde links (verdwijnt na registratie)

  #2  
Oud 13-02-13, 13:37
Whacko Whacko is offline
• iOS 7.1.2
• 5.1.1
• Besturingssysteem: Mac OS X
 
Geregistreerd: Jan 2009
Berichten: 484
Standaard

heeft met je Locale te maken. Moet je even googlen. Waarschijnlijk staat je simulator ingesteld op engels toetsenbord en je iPhone op nederlands. In code moet je dan wat extra's doen om hem correct uit te lezen.

EDIT:

misschien dat het antwoord in deze link je helpt.
http://stackoverflow.com/questions/3...pected-results
__________________
Software Engineer
iPhone Developer
  #3  
Oud 13-02-13, 14:27
brub brub is offline
• iOS 7.1.1
• 7.1.1
• Besturingssysteem: Mac OS X
 
Geregistreerd: Sep 2011
Berichten: 23
Standaard

ik heb het op een andere manier opgelost, maar weet niet of dit de beste oplossing is.

double test = [[self.aankoopPrijsLabel.text stringByReplacingOccurrencesOfString:@"," withString:@"."] doubleValue];

Als iemand een beter idee heeft, laat maar komen
  #4  
Oud 13-02-13, 14:58
Whacko Whacko is offline
• iOS 7.1.2
• 5.1.1
• Besturingssysteem: Mac OS X
 
Geregistreerd: Jan 2009
Berichten: 484
Standaard

Nou zou het voor een simpel getal niet veel uitmaken, maar het voordeel van NSScanner gebruiken is dat het met elke taal werkt, mochten er in andere talen een ander karakter dan . of , gebruikt worden.
Maar jouw oplossing zal in de meeste (zo niet alle getallen) wel werken ja.

EDIT:
Maar in engeland/ amerika mag je een getal als 3450312,99 opschrijven als: 3,450,312.99 dan ga je rare dingen krijgen waarschijnlijk een foutmelding.
Reageren



Er zijn 1 actieve gebruikers die momenteel deze discussie bekijken (0 leden en 1 gasten)

 

Soortgelijke discussies

Discussie Auteur Forum Reacties Laatste bericht
Muziek: .oma omzetten naar mp3 op een mac martijnvw82 Muziek, foto & video 2 27-03-11 22:08
Windows: Hoe kan ik itunes muziek omzetten (branden) naar een CD-R Remus iTunes 0 05-03-10 17:41

Regels voor berichten
Je mag geen nieuwe discussies starten
Je mag niet reageren op berichten
Je mag geen bijlagen versturen
Je mag niet je berichten bewerken

BB code is Aan
Smileys zijn Aan
[IMG]-code is Aan
HTML-code is Uit
Trackbacks are Aan
Pingbacks are Aan
Refbacks are Uit



Alle tijden zijn GMT +2. Het is nu 01:39.