Italian Piccolo Aiuto

silvercast

Member
Licensed User
Longtime User
Modulo Main

composto da una serie di button che richiamano tramite webview delle pagine html.
All'evento click si attiva un webview e si apre la pagine richiesta.
Ora, al cliccare sul tasto Return del telefono devo mettere webview aperta nuovamente in False e far ritornare la schermata principale

non capisco quale è l'instruzione da eseguire,mi aiutate ?

evento click (
Sub button_Click

WebView1.Visible=True attivo webview
WebView1.LoadUrl("url") visualizzo una pagina web

grazie a tutti
 

arenaluigi

Well-Known Member
Licensed User
Longtime User
Non sei stato proprio chiaro, o meglio mancano delle informazioni:

Cunque ti posto del codice sperando sia quello che ti server, questo codice intercetta il pulsante back.

B4X:
Sub Activity_KeyPress (KeyCode As Int) As Boolean
    If KeyCode = KeyCodes.KEYCODE_BACK Then
        WebView1.Visible=False'nascondo webview
    End If
End Sub
 

silvercast

Member
Licensed User
Longtime User
Non sei stato proprio chiaro, o meglio mancano delle informazioni:

Cunque ti posto del codice sperando sia quello che ti server, questo codice intercetta il pulsante back.

B4X:
Sub Activity_KeyPress (KeyCode As Int) As Boolean
    If KeyCode = KeyCodes.KEYCODE_BACK Then
        WebView1.Visible=False'nascondo webview
    End If
End Sub

scusate cercherò di essere più chiaro le prossime volte.
 
Last edited:

silvercast

Member
Licensed User
Longtime User
Ho provato ad inserire la sub, ma non mi ha risolto il problema.

questa la procedura che viene svolta:

a) apro il programma
b) Main principale che contiene un serie di Button che richiamano dei Webview(presenti sempre nell'interfaccia principale)
c) clicco uno dei button
d) sia apre la WebView che desidero
c) ora voglio tornare alla schermata principale(quella dei botton) ,quindi clicco il tasto Return e con questa operazione mi chiude il programma, perchè ?


allora ho pensanto di creare un nuovo modulo dove ci saranno le varie webview che sarano visibile secondo l'evento click selezionato.
Domanda: come passare l'evento del button al secondo modulo ?
 

genesi

Active Member
Licensed User
Longtime User
Ho provato ad inserire la sub, ma non mi ha risolto il problema.

B4X:
Sub Activity_KeyPress (KeyCode As Int) As Boolean
    If KeyCode = KeyCodes.KEYCODE_BACK Then
        WebView1.Visible=False'nascondo webview
        Return True    <---------- inserisci questa linea
    End If
End Sub
Codice modificato
 

arenaluigi

Well-Known Member
Licensed User
Longtime User
Figurati,bastava usare il tasto "search" cosa che non mi stancherò di ripetere :D
Si molte volte basta solo il search, ora attendiamo la risposta di Silvercast per capire se ha risolto.
 

silvercast

Member
Licensed User
Longtime User
Avete ragione in merito al tasto search,ma sono novello :)

il Return True ha funzionato, questo il codice:

Sub Activity_KeyPress (KeyCode As Int) As Boolean 'Funzione pulsante Back
If WebView1.Visible=True AND KeyCode = KeyCodes.KEYCODE_BACK Then
WebView1.Visible=False 'nascondo webview
Return True

Else
Dim domanda As Int
domanda =Msgbox2("Vuoi Veramente Uscire dal Programma?","Avviso","Si","","No",Null)
If domanda =DialogResponse.POSITIVE Then

Else If domanda =DialogResponse.NEGATIVE Then
Return True

End If
End If

End Sub

altra domanda...se volessi dettare la condizione in evidenza a le tutte Webview è possibile ? ho devo scrivere ogni if per quante webview utilizzata ?

grazie
 
Last edited:

genesi

Active Member
Licensed User
Longtime User
Avete ragione in merito al tasto search,ma sono novello :)
L'uso della funzione "Search" del forum non è prerogativa di esperti o meno ma a disposizione di chiunque
altra domanda...se volessi dettare la condizione in evidenza a le tutte Webview è possibile ? ho devo scrivere ogni if per quante webview utilizzata ?
Come ti ha detto lluigi dipende come hai scritto il codice.
Se hai capito come funziona il codice che hai usato itercetti i tasti dell'activity quindi un activity un controllo tre activity tre controlli
 

silvercast

Member
Licensed User
Longtime User
Dipende ci sono varie soluzioni.
Le webview che richiami possono essere più di una contemporaneamente ?




Altrimenti usi una sola webview dove ogni volta carichi il link selezionato.


esatto!!! devo richiamare più volte le webview (in tutto il ciclo di vita dell'applicazione) ,perchè mi deve rimanere in memoria ultima pagina visitata
 

arenaluigi

Well-Known Member
Licensed User
Longtime User
esatto!!! devo richiamare più volte le webview (in tutto il ciclo di vita dell'applicazione) ,perchè mi deve rimanere in memoria ultima pagina visitata

Scusa usi un unica webview, dove ogni volta che clicchi sul pulsante invii il link alla web view.
Ne apri più di una contemporaneamente ?
 

silvercast

Member
Licensed User
Longtime User
Scusa usi un unica webview, dove ogni volta che clicchi sul pulsante invii il link alla web view.
Ne apri più di una contemporaneamente ?

Non apro più webview contemporaneamente ,ma ho la necessità di mantenere in Cache la pagine precedente.Ecco l'idea di utilizzare più webview ,ma penso che sia complicato.Per ora utilizzerò una sola WebView come consigliato,poi vedrò se ci saranno delle alternative.
 

ivanomonti

Expert
Licensed User
Longtime User
Non apro più webview contemporaneamente ,ma ho la necessità di mantenere in Cache la pagine precedente.Ecco l'idea di utilizzare più webview ,ma penso che sia complicato.Per ora utilizzerò una sola WebView come consigliato,poi vedrò se ci saranno delle alternative.


crea un array di tipo stringa, anzi una lista, per ogni link che ti serve list.append(link) e via, quando chiudi tutto avrai tutti i link nella lista e potrai riprendere il link che ti interessa.
 

silvercast

Member
Licensed User
Longtime User
crea un array di tipo stringa, anzi una lista, per ogni link che ti serve list.append(link) e via, quando chiudi tutto avrai tutti i link nella lista e potrai riprendere il link che ti interessa.

OK!! studierò la List e vediamo se può essere un'alternativa.

tanto che ci siamo mi potete indirizzare (non so da dove partire) per effettuare l'interrogazione a un server per autenticazione Ldap.
L' App. che sto sviluppando (attualmente Open) deve avere un'autenticazione Ldap (UserId/Password) iniziale,questa mi permetterà di accedere alla schermata princiapale (dove sono i Botton).
Inoltre l'autenticazione (dopo effettuata) deve essere attiva su tutti i Link(che hanno bisogno della stessa Userid / password per essere aperti) associati alla webview o List.(in modo da non ripetere inserimento delle credenziali)
 
Top