Jetzt kostenlos registrieren: Mitglieder surfen ohne Werbung!

ScrollView per Buttons steuern

  • 4 Antworten
  • Neuester Beitrag
Diskutiere ScrollView per Buttons steuern im Android App Entwicklung im Bereich Betriebssysteme & Apps.
F

flflfl

Neues Mitglied
Hallo,

ich will eine ScrollView nur mit Buttons steuern, aber das funktioniert irgendwie nicht.

Code:
     <ScrollView android:id="@+id/plist_scroll">
        <LinearLayout android:id="@+id/plist_layout"
            android:orientation="vertical">
            <ListView android:id="@+id/plist_list" />
            <TextView android:id="@+id/plist_empty"     
                android:text="@string/main_no_items" />
        </LinearLayout>
    </ScrollView>
(...)
<Button android:id="@+id/plist_btn_up" />
<Button android:id="@+id/plist_btn_down" />
Code:
        scrV = (ScrollView) findViewById(R.id.plist_scroll);
        scrV.setSmoothScrollingEnabled(true);
        scrV.smoothScrollTo(0, 90);
Was ist hier falsch?

Danke :)
 
StefMa

StefMa

Gewerbliches Mitglied
HI,

aber das funktioniert irgendwie nicht.
Aha.. *.*...
LogCat? Ausgabefehler in der Console?!

Was nützt uns der Quellcode von wie du das ScrollView ansprichst, der von den Buttons wären sinnvoll!

MfG Ice
 
F

flflfl

Neues Mitglied
Hi,

im Logcat steht nur die System.out.println... Ausgabe "oben" bzw. "unten"

Quellcode von den Buttons:
Code:
onCreate() {
(...)
        up = (Button) findViewById(R.id.plist_btn_up);
        up.setOnClickListener(this);
        down = (Button) findViewById(R.id.plist_btn_down);
        down.setOnClickListener(this);

        scrV = (ScrollView) findViewById(R.id.plist_scroll);
        scrV.setSmoothScrollingEnabled(true);
(..)
}

public void onClick(View vw) {
       if (vw == up) {
            System.out.println("Oben");
            scrV.smoothScrollBy(0, -90);
        } else if (vw == down) {
            System.out.println("unten");
            scrV.smoothScrollTo(0, 90);
        }
    }
Danke!
 
StefMa

StefMa

Gewerbliches Mitglied
Hi,

also so sehe ich jetzt auf anhieb auch keine Fehler (Habe das selbst noch nie gemacht, aber es gibt ja d.android.com ;))..

Was ich mir vorstellen könnte, man gibt ja die Zahlen als Pixel wert an?! Vielleicht scrollt er ja auf -90 bzw. +90, allerdings siehts du es nicht, da die 90 Pixel +- sowieso Angezeigt werden... Versteht du was ich meine? :)

Außerdem, weiß ich nicht, ob du in der Methode onClick().. nicht nochmal die Buttons bzw das ScrollView an das Layout binden musst..
Also einfach nochmal
up = (Button) findViewById(R.id.plist_btn_up);
Ins OnClick schreiben?! Aber genau weiß ich das auch nicht!!

MfG Ice

P.s.: Naja, wenn er dir im LogCat "oben" bzw "Unten" ausgibt, dann sollte die Zweite lösung ja Falsch sein :>

€dit: Hier, das eine wird mit Pixel angestellt, das andere mit "Position". Was auch immer damit gemeint ist?!

€dit2: Ja klar ;) Mit deinem "RunterScrollen" gehts nicht, da du da ScollTo benutzt (Also das mit Position ist mir unverständlich). Das ScorllBy scorllt die Anzahl vin Pixel die du angibst. Also "geht" warhsceinlich das nach "oben", da du aber nie nach unten gehst, kann es auch nicht nach oben scollen?!
 
Zuletzt bearbeitet:
F

flflfl

Neues Mitglied
scrollby wars ;) danke!
 
Ähnliche Themen - ScrollView per Buttons steuern Antworten Datum
4
1