2013-07-16 7 views
8

I have a Monotouch.Dialog EntryElement.C# Xamarin/Monotouch.Dialog - EntryElement non visualizzato caratteri inseriti

Di tanto in tanto, quando si digita qualcosa, non appare nulla ...

Il cursore non viene visualizzata, e se digito il testo, non si vede, ma lo fa arrivare persisteva alla proprietà EntryElement.Value.

Il problema sembra essere solo sullo iPhone stesso, ma non su iOS Simulator. Sto correndo iOS 6.3

Qualche idea? Questo praticamente scrive Monotouch per me se non riesco ad avere un'esperienza utente coerente.

+0

stesso problema qui, aggiornato su questo? – rolivares

+0

Niente. Ho scartato completamente con Monotouch.Dialog e ho spostato i miei controlli personalizzati per tutto. – Goober

risposta

2

Al Xamarin sistema di tracciamento bug Bug 7398 è la situazione che hai descritto.

Ma è la versione 5.4 di iOS e in 5.2 funziona correttamente.

Anche Bug 7116 descrive lo stesso problema ma questa volta non era il bug Xamarins.

Il mio suggerimento è di postare il problema come bug a bugzilla.xamarin.com.

Specificare l'esempio che ho fornito per scrivere correttamente la segnalazione di errore.

0

Basta un lavoro in giro che fanno il lavoro per me:

//FIXME: this is a workaround about a bug relative to the position of TextBox element 
// https://bugzilla.xamarin.com/show_bug.cgi?id=7398 
var tmp = new EntryElement ("a", "a", "a"); 

ho aggiunto questo codice per la prima vista relativa alla mia domanda e il problema è andato.

Spero che questo aiuti gli altri.

+0

Ma come funziona esattamente? La dichiarazione dell'oggetto corrisponde alla dichiarazione standard EntryElement che causa il problema .... – Goober

+0

L'aggiunta di quel codice nella primissima vista ha risolto il mio problema. Non sto usando la variabile entryElement di tmp.Nel mio caso, penso che ci siano alcune attività di inizializzazione dove non sono eseguite e sono importanti per le misure di testo corrette per visualizzare il controllo nelle viste in avanti, quindi aggiungendo questo codice sto forzando le esecuzioni. Prova questo e dicci se funziona per te. – rolivares

0

Sembra che tu stia attraversando un bug. L'unica soluzione che ha funzionato per me è sottoclasse EntryElement e chiama il metodo FetchValue(); nel costruttore. Ecco un esempio:

public SAEntryElement (string caption, string placeholder, string value) : base(caption, placeholder, value) 
    { 
     // HACK: A workaround in an attempt to stop the bug where the value field would be empty sometimes 
     FetchValue(); 
    } 

non sono stato in grado di fare un banco di prova attendibile di mettere su Bugzilla di Xamarin, e non ho avuto il tempo di combattere più a lungo. Da quando ho implementato questa soluzione alternativa, il problema è passato sia al simulatore che al dispositivo per alcuni mesi. Si noti inoltre che esiste un sintomo simile per un bug noto relativo alle stringhe vuote come Didascalie (problema separato).

0

Con l'aiuto di risposta di MikroDel ei commenti in Bugzilla per la bug 7398, il problema per me era che l'altezza del EntryElement era 0.

impostazione al valore desiderato (più grande di 0) ha fissato il problema.

+0

Questo non fornisce una risposta alla domanda. Per criticare o richiedere chiarimenti da un autore, lascia un commento sotto il loro post - puoi sempre commentare i tuoi post, e una volta che hai [reputazione] sufficiente (http://stackoverflow.com/help/whats-reputation) essere in grado di [commentare qualsiasi post] (http://stackoverflow.com/help/privileges/comment). –

+0

Mi dispiace se ho fatto qualcosa di sbagliato, ho appena avuto lo stesso problema ** esatto, e questa era la soluzione, quindi volevo solo aiutare. – Boris