Autore Topic: due scrollview in tabs, posso farle scrollare assieme?  (Letto 787 volte)

Offline zak84

  • Utente normale
  • ***
  • Post: 165
  • Respect: +2
    • Mostra profilo
due scrollview in tabs, posso farle scrollare assieme?
« il: 01 Aprile 2011, 11:05:59 CEST »
0
Ragazzi ho una vista a tab (2 per la precisione), e ogni tab ha dentro una scrollview.
posso far si che se l'utente scrolla la prima, anche la seconda si scrolla? sono strutturalmente uguali.

Offline Nicola_D

  • Moderatore
  • Utente storico
  • *****
  • Post: 2479
  • SBAGLIATO!
  • Respect: +323
    • Github
    • Google+
    • nicoladorigatti
    • Mostra profilo
  • Dispositivo Android:
    Nexus 6p, Nexus 4, Nexus S, Nexus 7(2012)
  • Sistema operativo:
    Windows 7
Re:due scrollview in tabs, posso farle scrollare assieme?
« Risposta #1 il: 01 Aprile 2011, 13:26:16 CEST »
0
credo tu debba mettere un onScrollListener su entrambe, e mandare i dati di scroll da quella che scrolli all'altra.
Solo che essendo in due tab diversi non puoi farle comunicare direttamente, devi passare per l'activity che gestisce i tab, la quale invierà all'altro tab le info riguardo allo scrolling, che poi devi fare in modo programmatico... se non hai capito niente di quello che ho scritto, è dura, è una cosa lunga da fare se non sai come fare scrolling programmatico e comunicazione tra child e parent....
IMPORTANTE:NON RISPONDO A PROBLEMI VIA MESSAGGIO PRIVATO
LOGCAT: Non sai cos'è? -> Android Debug Bridge | Android Developers
               Dov'è in Eclipse? -> Window -> Open Prospective -> DDMS e guarda in basso!
[Obbligatorio] Logcat, questo sconosciuto! (Gruppo AndDev.it LOGTFO) - Android Developers Italia

Offline zak84

  • Utente normale
  • ***
  • Post: 165
  • Respect: +2
    • Mostra profilo
Re:due scrollview in tabs, posso farle scrollare assieme?
« Risposta #2 il: 01 Aprile 2011, 14:09:20 CEST »
0
ecco non ho capito  ;-)

Offline zak84

  • Utente normale
  • ***
  • Post: 165
  • Respect: +2
    • Mostra profilo
Re:due scrollview in tabs, posso farle scrollare assieme?
« Risposta #3 il: 03 Aprile 2011, 20:13:00 CEST »
0
beh ma non sai dove posso informarmi a riguardo? guide,tutorial,sourcecode... cisarà pure qualcuno nel mondo che ha dovuto farlo.
o se no, avrei in mente delle cose usando i cookie se ci sono (i singleton di iphone in parole povere)
« Ultima modifica: 04 Aprile 2011, 09:44:39 CEST da zak84 »

Offline teskio

  • Moderatore globale
  • Utente normale
  • *****
  • Post: 387
  • Respect: +118
    • Github
    • Google+
    • Mostra profilo
    • Skullab
  • Dispositivo Android:
    Cubot GT99 / SurfTab Ventos 10.1
  • Play Store ID:
    Skullab Software
  • Sistema operativo:
    windows 7 / ubuntu 12.04
Re:due scrollview in tabs, posso farle scrollare assieme?
« Risposta #4 il: 03 Aprile 2011, 21:01:29 CEST »
0
Citazione da: Nicola_D
Solo che essendo in due tab diversi non puoi farle comunicare direttamente, devi passare per l'activity che gestisce i tab

Non necessariamente. Le activity contenute nei tab sono autonome e potrebbero essere anche visualizzate singolarmente, quindi si comportano esattamente come due normali Activity. Essendo la ScrollView estensione di FrameLayout, che a sua volte estende ViewGroup, che a sua volta estende View( :-o mi gira la testa...), penso si possa fare l'override di onScrollChanged, prendere X e Y della nuova posizione e fare un scrollTo(int x,int y) dell'altra ScollView. Tuttavia lo scrollTo richiama a sua volta l'onScrollChanged e si potrebbe finire in un "circolo vizioso"   :-\
Un'altra strada potrebbe essere quella di creare una custom View che estende ScrollView, e implementare li i metodi opportuni.
Altra problematica sarà gestire tutti i NullPointerException che usciranno fuori (perchè usciranno  :-P), dato che visualizzare il TabHost non significa necessariamente inizializzare tutte le Activity.