2014-10-16 81 views
0

我在相對佈局中有一些FrameLayouts。在FrameLayouts中有一些TextViews。我希望這些文字視圖位於中心或左上角。問題是,我無法弄清楚如何做到這一點? 目前,它看起來像這樣:我的佈局有問題

http://i.stack.imgur.com/fJSz2.png (很抱歉的鏈接)

這是我的佈局XML:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:id="@+id/container" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
tools:context="com.timbremer.ctdataviewer.MainActivity" 
tools:ignore="MergeRootFrame" 
android:padding="16dp" 
android:paddingBottom="16dp" 
android:paddingTop="16dp" 
android:paddingLeft="16dp" 
android:paddingRight="16dp" 
android:background="#eeeeee" 
xmlns:app="http://schemas.android.com/apk/res-auto"> 



<FrameLayout 
android:background="@drawable/bg_card" 
android:layout_height="117dp" 
android:layout_width="match_parent" 
android:id="@+id/frameLayout" 
    android:layout_marginLeft="4dp" 
    android:layout_marginRight="4dp" 
    android:layout_alignParentTop="true"> 
<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Verbrauchtes Volumen:" 
    android:id="@+id/tv1" 
    android:layout_gravity="left|top" 
    android:layout_alignParentStart="true" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentTop="true"/> 

<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Bitte aktualisieren." 
    android:id="@+id/tvused" 
    android:layout_gravity="center" /> 
</FrameLayout> 

<FrameLayout 
    android:background="@drawable/bg_card" 
    android:layout_height="117dp" 
    android:layout_width="match_parent" 
    android:id="@+id/frameLayout4" 
    android:layout_below="@+id/frameLayout" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentStart="false" 
    android:layout_margin="4dp"> 

    <TextView 
     android:layout_width="83dp" 
     android:layout_height="10dp" 
     android:text="Gesamtvolumen:" 
     android:id="@+id/tv2" 
     android:layout_marginTop="65dp" 
     android:layout_gravity="left|top" 
     android:layout_alignParentStart="true" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentTop="true" /> 

    <TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Bitte aktualisieren." 
    android:id="@+id/tvgesamt" 
     android:layout_gravity="center" /> 

</FrameLayout> 

<FrameLayout 
    android:background="@drawable/bg_card" 
    android:layout_height="117dp" 
    android:layout_width="match_parent" 
    android:id="@+id/frameLayout2" 
    android:layout_below="@+id/frameLayout4" 
    android:layout_alignParentRight="true" 
    android:layout_alignParentEnd="false" 
    android:layout_margin="4dp"> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Abrechnungszeitraum" 
     android:id="@+id/tv3" 
     android:layout_marginTop="74dp" 
     android:layout_gravity="left|top" 
     android:layout_alignParentStart="true" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentTop="true" /> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Bitte aktualisieren." 
     android:id="@+id/tvzeit" 
     android:layout_gravity="center" /> 

</FrameLayout> 

<FrameLayout 
    android:background="@drawable/bg_card" 
    android:layout_height="117dp" 
    android:layout_width="match_parent" 
    android:id="@+id/frameLayout3" 
    android:layout_alignLeft="@+id/frameLayout2" 
    android:layout_alignRight="@+id/frameLayout2" 
    android:layout_alignParentBottom="true" 
    android:layout_below="@+id/frameLayout2"> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Maximale Geschwindigkeit:" 
     android:id="@+id/tv4" 
     android:layout_marginTop="47dp" 
     android:layout_gravity="left|top" 
     android:layout_alignParentStart="true" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentTop="true"/> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Bitte aktualisieren." 
     android:id="@+id/tvspeed" 
     android:layout_gravity="center" /> 

    <com.faizmalkani.floatingactionbutton.FloatingActionButton 
     android:id="@+id/fabbutton" 
     android:layout_width="72dp" 
     android:layout_height="72dp" 
     android:layout_gravity="bottom|end" 
     app:drawable="@drawable/ic_action_refresh" 
     app:color="#556ffd"/> 

</FrameLayout> 


</RelativeLayout> 

你知道該怎麼做?我只是不能正確放置我的TextViews ...

謝謝!

回答

1

只需使用下面的代碼:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
      xmlns:tools="http://schemas.android.com/tools" 
      android:id="@+id/container" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      tools:context="com.timbremer.ctdataviewer.MainActivity" 
      tools:ignore="MergeRootFrame" 
      android:padding="16dp" 
      android:paddingBottom="16dp" 
      android:paddingTop="16dp" 
      android:paddingLeft="16dp" 
      android:paddingRight="16dp" 
      android:background="#eeeeee" 
      xmlns:app="http://schemas.android.com/apk/res-auto"> 



      <FrameLayout 
      android:layout_height="117dp" 
      android:layout_width="match_parent" 
      android:id="@+id/frameLayout" 
       android:layout_marginLeft="4dp" 
       android:layout_marginRight="4dp" 
       android:layout_alignParentTop="true"> 
      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="Verbrauchtes Volumen:" 
       android:id="@+id/tv1" /> 

      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="Bitte aktualisieren." 
       android:id="@+id/tvused" 
       android:layout_marginTop="15dp" /> 
      </FrameLayout> 

      <FrameLayout 
       android:id="@+id/frameLayout4" 
       android:layout_width="match_parent" 
       android:layout_height="117dp" 
       android:layout_alignParentLeft="true" 
       android:layout_alignParentStart="false" 
       android:layout_below="@+id/frameLayout" 
       android:layout_margin="4dp" > 

       <TextView 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="Gesamtvolumen:" 
        android:id="@+id/tv2" /> 

       <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="Bitte aktualisieren." 
       android:id="@+id/tvgesamt" 
       android:layout_marginTop="20dp" /> 

      </FrameLayout> 

      <FrameLayout 
       android:layout_height="117dp" 
       android:layout_width="match_parent" 
       android:id="@+id/frameLayout2" 
       android:layout_below="@+id/frameLayout4" 
       android:layout_alignParentRight="true" 
       android:layout_alignParentEnd="false" 
       android:layout_margin="4dp"> 

       <TextView 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="Abrechnungszeitraum" 
        android:id="@+id/tv3" /> 

       <TextView 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="Bitte aktualisieren." 
        android:id="@+id/tvzeit" 
        android:layout_marginTop="20dp" /> 

      </FrameLayout> 

      <FrameLayout 
       android:layout_height="117dp" 
       android:layout_width="match_parent" 
       android:id="@+id/frameLayout3" 
       android:layout_alignLeft="@+id/frameLayout2" 
       android:layout_alignRight="@+id/frameLayout2" 
       android:layout_alignParentBottom="true" 
       android:layout_below="@+id/frameLayout2"> 

       <TextView 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="Maximale Geschwindigkeit:" 
        android:id="@+id/tv4" 
        android:layout_marginTop="20dp" /> 

       <TextView 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="Bitte aktualisieren." 
        android:id="@+id/tvspeed" /> 

       <com.faizmalkani.floatingactionbutton.FloatingActionButton 
        android:id="@+id/fabbutton" 
        android:layout_width="72dp" 
        android:layout_height="72dp" 
        android:layout_gravity="bottom|end" /> 

      </FrameLayout> 


      </RelativeLayout> 
0

我沒有真正讀懂所有的XML使這種改變.... 而

android:layout_gravity="center_horizontal" 
    android:gravity="center_horizontal" 

的左上角這樣做是爲了您的FrameLayouts做到這一點

android:layout_gravity="top|left" 
    android:gravity="top|left" 

,改變你的框架佈局,以

android:layout_width="wrap_content" 

讓我知道我是否有幫助..

+0

它看起來相同:( – timbremer 2014-10-16 21:59:12

+0

檢查我editted答案@ tbremer19 – Elltz 2014-10-16 22:05:42

+0

這並沒有工作過。我解決了它。我只是刪除並重新粘貼文本視圖,任何事情都可以:D 但是,無論如何謝謝你! – timbremer 2014-10-16 22:27:12