Italian Pubblicare la prima App

dexMilano

Active Member
Licensed User
Longtime User
Scusa se faccio un passo indietro,
ma a me si vede bene perchè a te non si vede la parte inferiore, visto che la risoluzione è la stessa??


BTW
grazie per il tempo che mi stai dedicando

dex
 

LucaMs

Expert
Licensed User
Longtime User
scusa se sono rinco, hai ragione! se anche tu hai la risoluzione 480x800 240(1.5) e la vedi bene, dovrei vederla anche io così!

uhm...

ma tu la vedi bene una volta installata o sul designer?

(non preoccuparti per il tempo, più ne uso qui, meno ne uso per la mia app, che ora non mi và di affrontare i suoi problemi :))
 

dexMilano

Active Member
Licensed User
Longtime User
io la vedo bene.
come pure sull'emulatore del GS2 che mi sono fatto la vedo bene

ho rimosso il secondo layout
e uso autoscale
abbastanza una schifezza ma si vede tutto
 

LucaMs

Expert
Licensed User
Longtime User
io la vedo bene.
come pure sull'emulatore del GS2 che mi sono fatto la vedo bene

ho rimosso il secondo layout
e uso autoscale
abbastanza una schifezza ma si vede tutto


(a questo punto dovresti scrivere nello Script del Designer anche tutte le posizioni e dimensioni delle tue view, per questo meglio usare il modulo di Klaus... oppure ancorare tutti i lati di tutte le view)
 

dexMilano

Active Member
Licensed User
Longtime User
Si l'ho visto e devo dire che lì non si capisce molto.
C'è un altro tread dove uno come me che non ha capito chiede spiegazioni e gli spiegano che TUTTO è messo dentro un pannello.
L'ho provato ma non capisco il bottone B come dovrei ancorarlo.

Il mio GS2 ha Android 2.3

Senti ma non hai skype
Sarebbe più comodo lì...
:-D
 

LucaMs

Expert
Licensed User
Longtime User
No, non uso Skype.
E ho detto un'altra cavolata, perché se àncori tutto non và bene.

Il fatto che abbiamo lo stesso tipo di display ma vediamo le cose diversamente sta proprio nella diversa versione di Android.

Và modificato il Manifest File, per questo, ma non ti risolve il problema di tutti gli altri display.

Nel Manifest, metti:

<uses-sdk android:minSdkVersion="4" />

(tu dovresti avere anche targetSdkVersion="14" o qualcosa del genere).

Poi, dammi retta, prova col modulo, anche perché hai poche activity, ci metti due minuti.
 

dexMilano

Active Member
Licensed User
Longtime User
Ma perchè il modulo di Klaus riesce a scalare tutto senza problemi e l'autoscale del designer invece no?

Non voglio mettere in dubbio il tuo consiglio, ma vorrei capire.
Altrimenti con l'altra app (che è ben altra cosa) sono messo peggio di adesso.
:-[
 

LucaMs

Expert
Licensed User
Longtime User
Ma perchè il modulo di Klaus riesce a scalare tutto senza problemi e l'autoscale del designer invece no?

Bella domanda, ma non me lo ricordo! So solo che mi dava problemi.

Però sto provando l'anchor in b4j, non è facilissimo e non si può ottenere quello che vorremmo!

Vanno ancorati, penso, due lati di ogni view, a seconda di dove si trovano.

Facciamo finta di avere il display diviso in 4

1 | 2
-----
3 | 4

se la view sta nel quadrante 1, dovresti ancorare il lasto sinistro e quello alto della view;
se sta nel 2, il destro e quello alto;
se sta nel 3, il sinistro e quello basso;
se sta nel 4, il destro e quello basso

se sta in centro, tutti e quattro, penso.

Prova il modulo :)
 

dexMilano

Active Member
Licensed User
Longtime User
Sto provando il modulo.
HO scaricato l'esempio e adesso provo.
Devo togliere Autoscale, giusto?

Condivido l'esperimento con le ancore.
Se ha 2x2 non ci sono problemi.
Se hai 3x2 non sai dove ancorare l'oggetto di mezzo (il bottone B). Se lo metti "both" lui lo stringe/allarga.
Quindi non funziona.
 

LucaMs

Expert
Licensed User
Longtime User
upload_2014-2-19_18-15-3.png

(mio e tuo display)


upload_2014-2-19_18-15-22.png

(Galaxy Nexus 720x1280-320 cioè 2)
 

Attachments

  • LM_ProvaLayout.zip
    11.6 KB · Views: 215

dexMilano

Active Member
Licensed User
Longtime User
Non mi funge (vd allegate immagini)
Inoltre siccome carico delle view al volo da layout salvati, queste non me le scala; quindi dovrei chiamare la routine ogni volta che carico un layout.

BTW
Emulatore settato con 480x800 hdpi

:-(

BTW
Come si fa a prendere la schermata dall'emulatore direttamente senza ritargliarla?
 

Attachments

  • Schermata 01.png
    Schermata 01.png
    32.6 KB · Views: 195
  • Schermata 02.png
    Schermata 02.png
    71.3 KB · Views: 232
  • Schermata 03.png
    Schermata 03.png
    221.3 KB · Views: 199

LucaMs

Expert
Licensed User
Longtime User
Fermi tutti!

Io ti parlavo solo della versione Portrait, ma vedo che hai postato anche quella Landscape (orizzontale, diciamo).

In questo caso devi fare due variant nel designer.

Si, se aggiungi qualche view successivamente, devi scalarla, usando: Scale.ScaleView(TuaView).

Se è un Panel: Scale.ScaleAll(TuoPanel, True).

Perché non ti funziona, non lo so. Guarda l'esempio.

Per la schermata, quando l'app è in esecuzione, dal menu Debug - voce Take Screenshot;
ma puoi collegare lo smartphone anche per copiare schermate in quel momento visualizzate, anche se non è la tua app: apri l'IDE, anche senza un progetto, e stavolta menu Tools - voce Take Screenshot

P.S. Quando ti funzionerà meglio, prova anche a modificare il Manifest File e guarda la differenza
 

dexMilano

Active Member
Licensed User
Longtime User
Ho continuato gli esperimenti.
Ho modificato la tua app mettendo il layout 480x800 e funziona come previsto con l'emulatore
Nel mio caso invece mi fa questo strech che ripropone anche nella schermata tablet (che ho usato per vedere l'effetto a risoluzione diversissima).

Per il discorso dei layout ho risolto (siccome li carico tutti all'inizio li scalo dopo aver caricato l'ultimo) e infatti tutte le pagine sono strecchate.
Coerente nello schifo

PS
Per il tablet non è un problema ruotarlo (infatti è in portrait) era giusto per vedere come veniva e se vedi è incompleto.

Dopo provo a usare il modulo del tuo esempio.
 

LucaMs

Expert
Licensed User
Longtime User
Il punto è che quando INIZI a disegnare il layout nel Designer, devi già avere impostato un variant (o usare quello di default che è 320x480-160).

Se usi quello di default, devi inizializzare il modulo di Klaus semplicemente con Scale.Initialize,
se invece elimini quello di default e ne crei uno adatto al tuo display, allora devi inizializzarlo con:
Scale.SetReferenceLayout(480, 800, 1,5), cioè usa come riferimento le dimensioni del variant che hai creato.
 

dexMilano

Active Member
Licensed User
Longtime User
Infatti.
così è nel mio e anche nel tuo modificato.

Comunque ho verificato che il tuo modulo adesso funziona.
Quello che ho scaricato dal tread mi da problemi.
Per altro il tuo linka una libreria (JavaObject) che in quello scaricato non linka.
Quindi è proprio diverso (il metodo getParent che tu hai nella versione nuova non c'è)
Io l'avevo recuperato da qui.

Adesso mi sembra che funzioni MOLTO meglio.

Ne sai niente di questa differenza?
 
Top