2013-06-06 10 views
5

Zajmuję się tworzeniem aplikacji dla systemu Android i chcę zaprojektować, w zaćmieniu, układ większy niż wysokość ekranu.Jak mogę zaprojektować układ większy niż ekran telefonu?

Mam układ fragmentu i ten fragment będzie wewnątrz ScrollView na FragmentActivity.

Jest to układ mojego fragment za:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/user_pro_main_view" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" > 

    <TextView 
     android:id="@+id/text_state" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:text="@string/layout_state" 
     android:textAppearance="?android:attr/textAppearanceLarge" /> 

</LinearLayout> 

Czy muszę zmienić android:layout_height="match_parent" aby je powiększyć na projektanta zaćmienia?

Co mam zrobić, jeśli chcę, aby układ był większy na projektantem Eclipse?

+2

użyj Androida: layout_height = "wrap_content", a wysokość twojego układu będzie zgodna z wysokością treści, a nie ekranem, oczywiście powinien być to układ najwyższego poziomu. –

Odpowiedz

1

Zawsze można jawnie ustawić dokładną wartość dp w height_height, ale oczywiście przez większość czasu nie sądzę, że chcesz mieć stałą wartość, więc rób to programowo.

LinearLayout yourLayout; // Get it by findViewById() 
yourLayout.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, your_calculated_height)); 
+0

Dziękuję za odpowiedź, ale muszę to zrobić podczas projektowania widok na zaćmienie. – VansFannel

0

by ustawić android:layout_height="wrap_content" a jak dodać elementy podrzędne poza ekranie fizycznej będzie nadal rozciągnąć układ.

Co do oglądania tego na Eclipse, nie jestem pewien. Osobiście wystarczy uruchomić go na urządzeniu, aby go wyświetlić.

0

wystarczy obliczyć wysokość i szerokość urządzenia i dodać wartość int do obliczonej wysokości i szerokości w czasie wykonywania na wysokości i szerokości układu.

public void deviceDisplay(){ 

    Display display = getWindowManager().getDefaultDisplay(); 
    int width = display.getWidth(); 
    int height = display.getHeight(); 


} 
2

Odpowiedź jest całkiem prosta: nie można zobaczyć układ, który jest biggern następnie na ekran edytora Eclipse.

Możliwe obejścia:
1. Komentarz część najlepszych widoków (widocznych), aby zobaczyć dno (które są niewidoczne), a następnie Odkomentuj kiedy gotowy do uruchomienia.
2. Zmień podgląd urządzenia na większą rozdzielczość (Nexus 10), co da ci dodatkową przestrzeń.

Powiązane problemy