2016-04-05 26 views
0

Bir textField öğesinin değerini denetleyen selectedRowInComponent öğesinde if ifadesi olan bir UIPickerView var. Metin alanına giren kullanıcı sayısı 10'dan büyükse, bir uyarı çağrılır. Her şey iyi çalışıyor, sadece uyarı seçildikten sonra, satır seçildikten ve alan düzenlendikten sonra tek bir kez ateş etmek istiyorum. Bu haliyle, alan 10'dan büyük bir değerle güncellendiğinde/düzenlendiğinde uyarı çağrılır. İlk uyarı yeterlidir. Bunu nasıl başarabileceğime dair ipuçları var mı? Teşekkürler!Swift UIAlertController satır başına bir kez ateşle textfield düzenlenir

if (inputField.text! as NSString).doubleValue > 10 { 

       SweetAlert().showAlert("Number is greater than 10", subTitle: "Please select number less than 10", style: AlertStyle.CustomImag(imageFile: "alertimage.png")) 
      } 
+0

bro etkinleştirmek için uygun zamanlarda bool sıfırlamak unutmayın ama nesnel c cevap Bu yüzden hızlı – iOS

+0

içinde bulabilir bekle Yardım takdir edin! – Boomspot

+0

bu kodu swift [[NSNotificationCenter defaultCenter] addObserverForName: UIApplicationWillResignActiveNotification nesnesi: nil kuyruğu: [NSOperationQueue mainQueue] kullanarakBlock:^(NSNotification * bildirim) { [message dismissWithClickedButtonIndex: 0 canlandırılmış: NO]; – iOS

cevap

1

Hızlı ve Kirli:

sizin viewController içinde kamuya açık bir bool değişken oluşturun ve (değişken 'alertAlreadyShown' arama sağlar) yanlış kullanıma hazır hale getirmeniz

Sonra sadece o bool hakkında ise açıklama yapmak senin pickerView yöntemi

 if (inputField.text! as NSString).doubleValue > 10 { 
      if (alertAlreadyShown == false) { 
        SweetAlert().showAlert(...) 
        alertAlreadyShown = true 
      } 
     } 

ama pozisyonu i cevap biliyorum yine

0

Bu konuda gidebileceğiniz iki yol var. Biri (ve benim düşüncemde en kullanıcı dostu), yalnızca seçici görünümünüzde ondan daha az olan değerleri gösterir. Diğer seçenek, uyarının görüntülenip görüntülenmediğine dair bir boole ayarlamak ve bunu if ifadenize bir kontrol olarak eklemektir.

+0

Merhaba @ pbush25 boolean seçeneği, durumumun iki seçeneğinin daha iyi olması gibi görünüyor. PickerView, kodumda sabit olarak temsil edilen ürünleri seçiyor. TextField, hesaplamalarda kullanılan bir değişkenin girdi değeridir. – Boomspot

+0

Uyarılarımı boole dönüştürmeye nasıl giderim? – Boomspot