2015-04-17 72 views
-1

我是新來的Android,並希望這樣的如何在Android中創建視圖?

Listings Data

創建視圖這是我在HTML創建了一個樣本行,但想在Android的相同(或幾乎相同)。請以任何方式引導我前進。

我寫

<?xml version="1.0" encoding="utf-8"?> 
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
      android:layout_width="wrap_content" 
      android:layout_height="match_parent"> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="123dp" 
     android:layout_marginLeft="6dp" 
     android:layout_marginRight="6dp" 
     android:layout_marginTop="4dp" 
     android:layout_marginBottom="4dp" 
     android:background="@drawable/bg_card" 
     android:divider="@android:color/transparent" 
     > 

      <TextView 
       android:id="@+id/field_1" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:gravity="left" 
       android:text="Field 1" 
       android:textColor="#000" 
       android:textStyle="bold"/> 

      <TextView 
       android:id="@+id/field_2" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:gravity="left" 
       android:text="Field 1" 
       android:textColor="#000" 
       android:textStyle="bold"/> 

      /* and so on */ 

    </LinearLayout> 


</FrameLayout> 

,但它給人的看法是這樣的:

Android view list

+0

我會建議如果你想讓它簡單的方法來使用AndroidStudio設計視圖 **但嚴重的是**,佈局的propper設計是一個嚴肅的話題來照顧一下,一個propper設計可以緩解GPU的工作。 請先參閱幾個教程,它們在SDK的示例中提供 – UrielUVD

回答

1

可以使用的LinearLayout和GridLayout的很長的路要走。 將前兩個TextView放置在LinearLayout中,並將方向設置爲垂直。 然後將GridLayout中的4個下一項設置爲2列。 最後三個項目的末尾的單選按鈕放入另一個LinearLayout,但方向設置爲水平。編輯: 我沒看到兩個圖標。它應該仍然可以使用帶有2列的GridLayout,然後每個第二項應該是一個水平的LinearLayout,它包含一個帶有圖標作爲源和TextView的ImageView。 您可以使用重力和重量屬性來正確放置視圖。

接近這個的東西,雖然你必須找出適合你的正確邊距,填充等等。

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

<LinearLayout 
    android:layout_height="wrap_content" 
    android:layout_width="wrap_content" 
    android:orientation="vertical"> 

    <TextView 
     android:layout_margin="10dp" 
     android:layout_marginLeft="10dp" 
     android:text="Test line" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" /> 

    <TextView 
     android:layout_margin="10dp" 
     android:layout_marginLeft="10dp" 
     android:text="Test line 2 test test" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" /> 
</LinearLayout> 

<GridLayout 
    android:layout_margin="10dp" 
    android:columnCount="2" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"> 

    <TextView 
     android:text="Another Test line" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" /> 

    <LinearLayout 
     android:orientation="horizontal" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content"> 

     <ImageView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" /> 

     <TextView 
      android:text="Test string" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" /> 

    </LinearLayout> 

    <Button 
     android:text="Textbox" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" /> 

    <LinearLayout 
     android:orientation="horizontal" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content"> 

    <ImageView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" /> 

    <TextView 
     android:text="Another test string" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" /> 

</GridLayout> 

<LinearLayout 
    android:weightSum="6" 
    android:orientation="horizontal" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content"> 

    <ImageView 
     android:layout_weight="1" 
     android:maxHeight="100dp" 
     android:maxWidth="100dp" 
     android:src="@drawable/abc_btn_rating_star_on_mtrl_alpha" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" /> 

    <TextView 
     android:layout_weight="1" 
     android:text="Test profile link" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" /> 

    <ImageView 
     android:layout_weight="1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" /> 

    <RadioButton 
     android:layout_weight="3" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" /> 
</LinearLayout> 

+1

我必須在所有內容之上使用Framelayout或Relativelayout嗎? – Harry

+0

您可以使用FrameLayout。 – stonecompass

+1

我剛剛添加了一個xml示例。希望能幫助到你。 – stonecompass