Italian La data in una editext

Federico1968

Member
Licensed User
Longtime User
Ciao,
solo da poco tempo mi sono avvicinato a b4a, al momento mi trovo in difficoltà in un passaggio.
Vorrei inserire una data in una edittext con un dialog.
Esaminado la libreria dialogs ed il file dialogsdemo ne sono venuto a capo.
Non riesco però ad eseguire la sub quando seleziono la cella.
In pratica:

Dim Inserimentoscheda as EditText
Dim dd As DateDialog

Sub Inserimentoscheda_FocusChanged (HasFocus As Boolean)
If Inserimentoscheda.RequestFocus = True Then
txt=""
dd.Year = DateTime.GetYear(DateTime.Now)
dd.Month = DateTime.GetMonth(DateTime.Now)
dd.DayOfMonth = DateTime.GetDayOfMonth(DateTime.Now)
ret = dd.Show("Inserisci la tua data di nascita", "", "Ok", "Annulla","" ,bmp)
If ret=-3 Then
Return True
End If
If ret =-1 Then
Inserimentoscheda.Text = dd.DayOfMonth & "/" & dd.Month & "/" & dd.Year
End If
End If
End Sub


La parte " _FocusChanged (HasFocus As Boolean)" rimane colorata in rosso e non funziona.

Dove sbaglio ?

Un grazie in anticipo

Federico
 

Federico1968

Member
Licensed User
Longtime User
Ciao fifiddu,
ho seguito tutti i tuoi video, ed è per questo che mi sono avvicinato a b4a.

Onestamente credevo di aver inserito tutto per risolvere il dubbio.

Sostanzialmente nella Activity create ho una edit text che vorrei scrivere in automatico con il dialog data
Sempre nell'activity create inizializzo la edit text

Inserimentoscheda.Initialize("")
Inserimentoscheda.TextColor = Colors.Blue
Inserimentoscheda.TextSize = 14
Inserimentoscheda.Text=""

poi vorrei, che quando l'utente seleziona la edittext, si apra l'input della data.
quindi richiamare la seguente sub

Sub Inserimentoscheda_FocusChanged (HasFocus As Boolean)
If Inserimentoscheda.RequestFocus = True Then
txt=""
dd.Year = DateTime.GetYear(DateTime.Now)
dd.Month = DateTime.GetMonth(DateTime.Now)
dd.DayOfMonth = DateTime.GetDayOfMonth(DateTime.Now)
ret = dd.Show("Inserisci la tua data di nascita", "", "Ok", "Annulla","" ,bmp)
If ret=-3 Then
Return True
End If
If ret =-1 Then
Inserimentoscheda.Text = dd.DayOfMonth & "/" & dd.Month & "/" & dd.Year
End If
End If
End Sub

La parte " _FocusChanged (HasFocus As Boolean)" rimane colorata in rosso e non funziona.

non riesco a venirne a capo :BangHead:

Grazie mille
 

arenaluigi

Well-Known Member
Licensed User
Longtime User
Prova questo codice, devi metterlo nell'evento FocusChenged della edittext.

B4X:
    Dim Dd As DateDialog
    Dim ret As Int
   Dim DataOdierna As Long
    ' imposta data odierna come default
    DateTime.DateFormat = "dd/MM/yyyy"
    DataOdierna = DateTime.Now
   
   Dd.DateTicks=DataOdierna
   If HasFocus Then
       ret = Dd.Show("Seleziona una data", "Data", "OK", "", "Annulla", Null)
       If ret = DialogResponse.CANCEL Then Return
       EdtGiornoInizio.Text = DateTime.Date(Dd.DateTicks)   
   End If
Imposta la data iniziale alla data odierna e poi scegli la data che vuoi.
 

maxware

Well-Known Member
Licensed User
Longtime User
Mi aggancio per un problema della libreria Dialogs che ho riscontrato ( mi sorge il dubbio che sia solo mio ? )
Federico nel manifest che impostazioni metti per la compatibilita' delle versioni android ?
Per capirsi se metto <uses-sdk android:minSdkVersion="8" />
Il dialogs viene graficamente bene ma es. le text vengono in vecchi ostile
se invece metto
<uses-sdk android:minSdkVersion="8" android:targetSdkVersion="14" />
La text viene graficamente perfetta in line acon la versione ma la dialogs non si capisce nulla
Ideeee??
 

maxware

Well-Known Member
Licensed User
Longtime User
ecco galaxynote II in verticale
stringa nel manifest :
<uses-sdk android:minSdkVersion="8" android:targetSdkVersion="14" />
path android.jar
C:\Android\android-sdk\platforms\android-14\android.jar
immgine in allegato
dialogs.png
 
Top