Button positioniert sich immer über Tastatur

lordzwieback

lordzwieback

Erfahrenes Mitglied
210
Guten Morgen euch allen,

ich habe heute morgen in meiner App etwas seltsames entdeckt. Und zwar habe ich eine Activity mit einigen EditTexts und ganz unten einem Button.

Klicke ich jetzt in eine der EditTexts, erscheint die Tastatur. Gleichzeitig zieht der Button (welcher normalerweise immer an seiner ursprünglichen Position unten auf der Activity sitzt) sich über die Tastatur mitten ins Layout und nimmt anscheinend die Tastatur als neuen "Boden"?

Hat jemand ne Idee? Kommt mir auch so vor, als wäre das erst seit heute morgen. Kann ich da aus Versehen etwas verstellt haben?

Ich vermute ja, dass es irgendwo an dem Button eine Property gibt, aber ich finde sie nicht..

liebe Grüße
 
Moin ,

auf Anhieb fällt mir da nichts ein.
Es wird definitiv an Deinem Layout , oder irgendwo im Code liegen ( z.b. set to Foreground)

Macht der das auch auf verschiedenen Devices ??
 
  • Danke
Reaktionen: 123thomas
Moin,

ich denke du hast einen FloatingActionButton Button in einem CoordinatorLayout. Dann bewegt der sich nämlich mit.

Edit: swa00 war schneller

Gruß
 
  • Danke
Reaktionen: swa00
Hatte ich auch zuerst vermutet, aber er schreibt ja "Button"
 
  • Danke
Reaktionen: 123thomas
Wenn euch das hilft, hier mal der XML Layout Code des Buttons:

Code:
<Button
        android:text="Verbindung testen..."
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/testFTPConn"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_marginBottom="35dp"/>

@swa00 Momentan ist es noch nicht so tragisch, wollte aber trotzdem mal nachfragen, ob es hierfür eine einfache Erklärung gibt. Ich werde es mal auf einem anderen Gerät testen und Rückmeldung geben. Falls doch jemand eine zündende Idee hat, nur her damit. :)
[doublepost=1484301910,1484301759][/doublepost]@123thomas Ich habe kein CoordinatorLayout. Habe ein RelativeLayout und es ist kein FloatingActionButton.
 
Nimm mal zur Probe alle deine "align" raus
 
@swa00 Wenn ich alle aligns rausnehme, erscheint der Button ganz oben auf der Activity (und verdeckt komplett das erste EditText Element, welches normalerweise ganz oben sitzt). Ich mach gleich erstma Mittag, danach kann ich euch auch mal meinen Quelltext (und Screenshots) zu diesem Button (bzw. der Activity) posten. Vielleicht seht ihr direkt etwas, was mir nicht auffällt.
 
Das war klar, ich wollte ja nur testen , ob dein Problem dann weg ist - shit-egal , wo der dann erst mal sitzt
 
Also, hier jetzt mal die Screenshots vom Problem im Anhang. Ich denke es wird klar, was ich meine. :)

Und hier mal zusammengefasst alles, was mit dem Button im Code passiert:

Code:
private Button testFTPConn;
testFTPConn = (Button) findViewById(R.id.testFTPConn);

// connect to ftp server (button)
        testFTPConn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                new _async_ftp_conn(ftpHost.getText().toString(), ftpUsername.getText().toString(), ftpPassword.getText().toString()).execute();
                new _async_ftp_changeDir(ftpStandardDir.getText().toString()).execute();
            }
        });

Die jeweiligen _async_ Tasks funktionieren einwandfrei. Aber daran wirds wohl auch nicht hängen.

Der XML Code des Buttons war weiter oben schonmal (Post #5). Mehr gibts nicht zu diesem Button.
 

Anhänge

  • Screenshot_20170113-122213.png
    Screenshot_20170113-122213.png
    25,9 KB · Aufrufe: 161
  • Screenshot_20170113-122223.png
    Screenshot_20170113-122223.png
    36,8 KB · Aufrufe: 137
ich habe noch keine Antwort auf meine "align" von Dir ....


was passiert , wenn du sie einfach mal rausnimmst ?
Ich will auch nicht von dir dann wissen , dass der Knopf oben hängt , das ist mir bewusst
 
Da passiert dann nichts, aber ich denke deshalb, weil außer dem Button nichts im unteren Bereich sitzt.

Auf meiner anderen Activity passiert das nicht. Habe die Vermutung, dass es daran liegt, dass ich dort meine Elemente nochmal in einem ScrollView stehen habe. Komme aber gerade nicht dazu, es zu testen.
 
Auf meiner anderen Activity passiert das nicht. Habe die Vermutung, dass es daran liegt, dass ich dort meine Elemente nochmal in einem ScrollView stehen habe. Komme aber gerade nicht dazu, es zu testen.

Ich glaube , du bist auf dem Richtigen Weg :

Erstens würde ich mir an Deiner Stelle immer angwöhnen, dass das Ganze in einen ScrollView kommt , da es ja auch kleine Displays gibt.

Dann hast du zwei Bezüge in der XML zu deinem Button

1) einmal als Ende des Parent = android:layout_alignParentBottom="true"
2) und von dem Bezug aus machst du ein 35dp Margin , deshalb ist der knopf auch 35 dp oberhalb der Tastatur
 
Zuletzt bearbeitet:
@swa00 @123thomas Es war tatsächlich das ScrollView, was gefehlt hat. Jetzt kann ich so viel drin rumklicken wie ich möchte, der Button bleibt immer schön da, wo er hingehört.

Wie immer danke für eure Hilfe. :)

Nur komisch, dass mir das gestern/vorgestern noch nicht aufgefallen ist. Müsste da ja auch so aufgetaucht sein.. egal, wenns geht bin ich zufrieden.
 
  • Danke
Reaktionen: markus.tullius und 123thomas
@lordzwieack,

auf die Idee bin ich noch nicht gekommen, werde ich demnächst mal testen. Brauche manchmal eine Taste über das Softkeyboard. Noch eine Randbemerkung, der Effekt tritt bei allen Klassen auf, die von der Klasse FrameLayout erben (z.B. ScrollView).
 
Zuletzt bearbeitet:
auf die Idee bin ich noch nicht gekommen, werde ich demnächst mal testen. Brauche manchmal eine Taste über das Softlayout.

Das Gleiche hatte ich mir auch dabei gedacht :)

Also Lieber Lord
Lieben Dank für den "Super-Trick" :)

(Siehste, jetzt haste dich revanchiert)
 
  • Danke
Reaktionen: lordzwieback
swa00 schrieb:
Das Gleiche hatte ich mir auch dabei gedacht :)

Also Lieber Lord
Lieben Dank für den "Super-Trick" :)

(Siehste, jetzt haste dich revanchiert)
Wie was wo? Habs nicht wirklich verstanden, aber wenns euch geholfen hat - gern geschehen. :D
 
Na dein Fehler , war recht "praktisch" - falls man so etwas mal braucht :)
 
Stimmt allerdings.

Hatte das mit dem Softlayout gemeint, wegen nicht verstehen.
 
Softkeyboard - Fehlerteufel. :)
 

Ähnliche Themen

MES
Antworten
10
Aufrufe
812
MES
MES
A
  • AnimaAngelo85
Antworten
1
Aufrufe
331
swa00
swa00
C
Antworten
8
Aufrufe
1.122
swa00
swa00
Zurück
Oben Unten