2017-09-26 5 views
0

Je n'arrive pas à faire fonctionner mon Android TableLayout, ça sort de l'écran. J'ai essayé la disposition: poids et android: shrinkColumns = "*".TableLayout sortir de l'écran

Mon xml:

<RelativeLayout 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:app="http://schemas.android.com/apk/res-auto" 
     xmlns:tools="http://schemas.android.com/tools" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     tools:context="dindz.oso.MainActivity"> 

<android.support.v7.widget.Toolbar 
    android:id="@+id/toolbar" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_centerHorizontal="true" 
    android:background="?attr/colorPrimary" 
    android:minHeight="?attr/actionBarSize" 
    app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
    app:theme="@style/ThemeOverlay.AppCompat.Dark" /> 

<TableLayout 
    android:id="@+id/tl" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentStart="true" 
    android:layout_below="@+id/toolbar" 
    android:gravity="center_horizontal" 
    android:shrinkColumns="*" 
    android:stretchColumns="0,1,2,3"> 

    <TableRow 
     android:id="@+id/header_tabeli" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_margin="1dp" 
     android:background="#000000" 
     android:gravity="center"> 

     <TextView 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_column="0" 
      android:layout_margin="1dp" 
      android:background="#FFFFFF" 
      android:gravity="center" 
      android:text=" Data\nstartu " 
      android:textAppearance="?android:attr/textAppearanceLarge" 
      android:textStyle="bold" 
      android:layout_weight="1"/> 

     <TextView 
      android:layout_weight="1" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_column="1" 
      android:layout_margin="1dp" 
      android:background="#FFFFFF" 
      android:gravity="center" 
      android:text="Stacja" 
      android:textAppearance="?android:attr/textAppearanceLarge" 
      android:textStyle="bold" /> 

     <TextView 
      android:layout_weight="1" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_column="2" 
      android:layout_margin="1dp" 
      android:background="#FFFFFF" 
      android:gravity="center" 
      android:text="Rodzaj" 
      android:textAppearance="?android:attr/textAppearanceLarge" 
      android:textStyle="bold" /> 

     <TextView 
      android:layout_weight="1" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_column="3" 
      android:layout_margin="1dp" 
      android:background="#FFFFFF" 
      android:gravity="center" 
      android:text="Poziom" 
      android:textAppearance="?android:attr/textAppearanceLarge" 
      android:textStyle="bold" /> 
    </TableRow> 

    <TableRow 
     android:layout_width="fill_parent" 
     android:layout_height="0dp" 
     android:layout_margin="1dp" 
     android:layout_weight="1" 
     android:background="#000000"> 

     <TextView 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_column="0" 
      android:layout_margin="1dp" 
      android:layout_weight="1" 
      android:background="#FFFFFF" 
      android:gravity="center" 
      android:text="data 2301.23.23 11:23 ksajd" 
      android:textAppearance="?android:attr/textAppearanceLarge" /> 

     <TextView 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_column="1" 
      android:layout_margin="1dp" 
      android:layout_weight="1" 
      android:background="#FFFFFF" 
      android:gravity="center" 
      android:text="stacja wrocław ul. długiego 32" 
      android:textAppearance="?android:attr/textAppearanceLarge" /> 

     <TextView 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_column="2" 
      android:layout_margin="1dp" 
      android:layout_weight="1" 
      android:background="#FFFFFF" 
      android:gravity="center" 
      android:text="rodzaj no2" 
      android:textAppearance="?android:attr/textAppearanceLarge" /> 

     <TextView 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_column="3" 
      android:layout_margin="1dp" 
      android:layout_weight="1" 
      android:background="#FFFFFF" 
      android:gravity="center" 
      android:text="4" 
      android:textAppearance="?android:attr/textAppearanceLarge" /> 
    </TableRow> 


</TableLayout> 

<EditText 
    android:id="@+id/editText" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_below="@+id/tl" 
    android:layout_centerHorizontal="true" 
    android:ems="10" 
    android:inputType="textPersonName" 
    android:text="Brak aktywnych alarmów" 
    android:visibility="invisible" /> 

Captures d'écran:

What I want

La différence entre ces images est seul texte plus court/plus.

J'essayais certaines combinaisons avec wrap_content/match_parent, mais ça ne m'a pas aidé.

Pouvez-vous m'aider? Merci d'avance.

EDIT à la réponse de ysl: the result of your code

Répondre

0

Essayez le code suivant peut être utile:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <android.support.v7.widget.Toolbar 
     android:id="@+id/toolbar" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" 
     android:layout_alignParentTop="true" 
     android:background="?attr/colorPrimary" 
     android:minHeight="?attr/actionBarSize" 
     app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
     app:theme="@style/ThemeOverlay.AppCompat.Dark" /> 

    <TableLayout 
     android:id="@+id/tl" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/toolbar" 
     android:collapseColumns=" Data\nstartu " 
     android:gravity="center" 
     android:shrinkColumns="*" 
     android:stretchColumns="*"> 

     <TableRow 
      android:id="@+id/header_tabeli" 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:background="#000000" 
      android:gravity="center"> 

      <TextView 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_column="0" 
       android:background="#FFFFFF" 
       android:gravity="center" 
       android:text="Stacja ugugugugugug " 
       android:textStyle="bold" /> 


      <TextView 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_column="1" 
       android:layout_margin="1dp" 
       android:background="#FFFFFF" 
       android:gravity="center" 
       android:text="Stacja ugugugugugug" 
       android:textStyle="bold" /> 

      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="match_parent" 
       android:layout_column="2" 
       android:layout_margin="1dp" 
       android:background="#FFFFFF" 
       android:gravity="center" 
       android:text="Rodzaj" 
       android:textStyle="bold" /> 

      <TextView 
       android:id="@+id/textView" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_column="3" 
       android:layout_margin="1dp" 
       android:background="#FFFFFF" 
       android:gravity="center" 
       android:text="Poziom" 
       android:textStyle="bold" /> 
     </TableRow> 

     <TableRow 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_margin="1dp" 
      android:background="#000000"> 

      <TextView 
       android:id="@+id/textView2" 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_column="0" 
       android:layout_margin="1dp" 
       android:background="#FFFFFF" 
       android:gravity="center" 
       android:text="stacja Data\nstartu " /> 

      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_column="1" 
       android:layout_margin="1dp" 
       android:background="#FFFFFF" 
       android:gravity="center" 
       android:text="stacja Data\nstartu " /> 

      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="match_parent" 
       android:layout_column="2" 
       android:layout_margin="1dp" 
       android:background="#FFFFFF" 
       android:gravity="center" 
       android:text="rodzaj no2" /> 

      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="match_parent" 
       android:layout_column="3" 
       android:layout_margin="1dp" 
       android:background="#FFFFFF" 
       android:gravity="center" 
       android:text="4" /> 
     </TableRow> 


    </TableLayout> 

</RelativeLayout> 
+0

Je viens de texte changé pour plus dans votre code en 2ème textview du 2nd TableRow. Ne fonctionne pas (écran ci-dessus dans EDIT). Encore merci pour votre message. – Maciek

+0

Changer android: stretchColumns = "0,1,2,3" pour android: stretchColumns = "*" – YoLo

+0

Je simplement modifier votre réponse (a changé toute la largeur de la télévision à 0dp) et il a fait l'affaire. Merci ysl. TableRow: android: layout_width = "0DP" android: layout_height = "wrap_content" TextView: android: layout_width = "0DP" android: layout_height = "wrap_content" je ne peux pas vous-vote :/ – Maciek

0

Code de travail si quelqu'un a besoin:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <android.support.v7.widget.Toolbar 
     android:id="@+id/toolbar" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" 
     android:layout_alignParentTop="true" 
     android:background="?attr/colorPrimary" 
     android:minHeight="?attr/actionBarSize" 
     app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
     app:theme="@style/ThemeOverlay.AppCompat.Dark" /> 

    <TableLayout 
     android:id="@+id/tl" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:gravity="center" 
     android:layout_below="@+id/toolbar" 
     android:layout_alignParentStart="true"> 
<!--  android:shrinkColumns="*" 
     android:stretchColumns="*" 
     android:collapseColumns="*"--> 

     <TableRow 
      android:id="@+id/header_tabeli" 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:background="#000000" 
      android:gravity="center"> 

      <TextView 
       android:layout_width="0dp" 
       android:layout_height="wrap_content" 
       android:layout_column="0" 
       android:layout_weight="2" 
       android:layout_margin="1dp" 
       android:background="#FFFFFF" 
       android:gravity="center" 
       android:text="Data\nstartu" 
       android:textStyle="bold" /> 


      <TextView 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_column="1" 
       android:layout_margin="1dp" 
       android:layout_weight="4" 
       android:background="#FFFFFF" 
       android:gravity="center" 
       android:text="Stacja" 
       android:textStyle="bold" /> 

      <TextView 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_column="2" 
       android:layout_margin="1dp" 
       android:layout_weight="1" 
       android:background="#FFFFFF" 
       android:gravity="center" 
       android:text="Rodzaj" 
       android:textStyle="bold" /> 

      <TextView 
       android:id="@+id/textView" 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_column="3" 
       android:layout_margin="1dp" 
       android:layout_weight="1" 
       android:background="#FFFFFF" 
       android:gravity="center" 
       android:text="Poziom" 
       android:textStyle="bold" /> 
     </TableRow> 

     <TableRow 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_margin="1dp" 
      android:background="#000000"> 

      <TextView 
       android:id="@+id/textView2" 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_column="0" 
       android:layout_margin="1dp" 
       android:layout_weight="2" 
       android:background="#FFFFFF" 
       android:gravity="center" 
       android:text="9/21/2017 1:52:00 PM" /> 

      <TextView 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_column="1" 
       android:layout_margin="1dp" 
       android:layout_weight="4" 
       android:background="#FFFFFF" 
       android:gravity="center" 
       android:text="Wrocław, ul. Wyb. J.Conrada-Korzeniowskiego 18" /> 
      <!--Wrocław, ul. Wyb. J.Conrada-Korzeniowskiego 18--> 

      <TextView 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_column="2" 
       android:layout_margin="1dp" 
       android:layout_weight="1" 
       android:background="#FFFFFF" 
       android:gravity="center" 
       android:text="no2" /> 

      <TextView 
       android:layout_width="0dp" 
       android:layout_height="match_parent" 
       android:layout_column="3" 
       android:layout_margin="1dp" 
       android:layout_weight="1" 
       android:background="#FFFFFF" 
       android:gravity="center" 
       android:text="4" /> 
     </TableRow> 


    </TableLayout> 

</RelativeLayout>