Moim problemem jest biała linia na dole ekranu. Nie mam pojęcia, dlaczego tam jest. To wygląda tak :

screen

Ten układ jest zdefiniowany w XML:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@android:color/black"
android:orientation="vertical" >

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/linearLayout1"
    android:layout_width="250dp"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_centerInParent="true"
    android:layout_gravity="bottom"
    android:layout_marginBottom="30dp"
    android:orientation="vertical" >

    <!-- MAIN TITLE -->


    <!-- LOGIN TITLE -->

    <TextView
        android:id="@+id/login_label"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/login"
        android:textColor="@android:color/white"
        android:textSize="18sp" />
    <!-- LOGIN TEXT -->

    <EditText
        android:id="@+id/login_text"
        android:layout_width="250dp"
        android:layout_height="wrap_content"
        android:inputType="textNoSuggestions"
        android:background="@android:color/white"
        android:textSize="18dp" />
    <!-- PASSWORD TITLE -->

    <TextView
        android:id="@+id/password_label"
        android:layout_width="250dp"
        android:layout_height="wrap_content"
        android:layout_marginTop="5sp"
        android:text="@string/password"
        android:textColor="@android:color/white"
        android:textSize="18sp" />
    <!-- PASSWORD TEXT -->


    <EditText
        android:id="@+id/password_text"
        android:layout_width="250dp"
        android:layout_height="wrap_content"
        android:layout_marginBottom="10dp"
        android:inputType="textPassword"
        android:background="@android:color/white"
        android:textSize="18dp" />



    <!-- LOG IN BUTTON -->

    <Button
        android:id="@+id/login_button"
        android:layout_width="120dp"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:background="#3DB0E1"
        android:padding="12dp"
        android:text="@string/login_button"
        android:textColor="@android:color/white" />
</LinearLayout>    
</RelativeLayout>

Zauważyłem też, że dzieje się to dopiero po uruchomieniu mojej aplikacji. Jeśli przychodzę tu z innej działalności bzy startActivity(intent), linia znika. Każda pomoc byłaby mile widziana.

3
slezadav 19 październik 2012, 13:11

2 odpowiedzi

Najlepsza odpowiedź

Właściwie zniknie po odtworzeniu (opublikowany błąd), więc wszystko, co musisz zrobić, to w zasadzie go odtworzyć.

Intent intent;
intent = getIntent();
if (intent.getBooleanExtra("FIRST", true)) {
    LoginActivity.this.finish();
    intent = new Intent().setClass(LoginActivity.this, LoginActivity.class);
    intent.putExtra("FIRST", false);
    startActivity(intent);
}
0
Michal 19 październik 2012, 18:35

Twój najbardziej zewnętrzny układ względny jest niepotrzebny. Dlaczego to masz?

Moim rozwiązaniem byłoby:

W android:id="@+id/linearLayout1" zmianie

android:layout_marginBottom="30dp"

Do

android:paddingBottom="30dp"

W najbardziej zewnętrznym układzie względnym

LUB: Usuń najbardziej względny układ zewnętrzny

Daj znać czy działa

0
Jacek Milewski 19 październik 2012, 17:46