0

我有一個網格視圖。我有自定義視圖的簡單網格適配器, 但該自定義視圖隱藏圖像,但我可以在Eclipse圖形佈局視圖中看到視圖。但是當我運行它時,它隱藏了一張圖片Android相對佈局隱藏我的圖片視圖

custom grid item layout : 

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

     <RelativeLayout 
      android:id="@+id/gridviewlayout" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:background="@drawable/grid_item_selector" > 

      <ImageView 
       android:id="@+id/picture" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_above="@+id/text" 
       android:layout_alignParentTop="true" 
       android:layout_centerHorizontal="true" 
       android:layout_marginBottom="5dp" 
       android:padding="5dp" 
       android:src="@drawable/ic_launcher" /> 

      <TextView 
       android:id="@+id/text" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_alignParentBottom="true" 
       android:layout_marginTop="10dp" 
       android:gravity="center" 
       android:paddingBottom="5dp" 
       android:singleLine="true" 
       android:text="settings" 
       android:textAppearance="?android:attr/textAppearanceMedium" 
       android:textColor="@color/black" 
       android:textStyle="bold" /> 
     </RelativeLayout> 

    </LinearLayout> 
+2

如果這些是你的佈局中唯一的組件,那麼你的根標籤'linearLayout'似乎對我毫無意義,將其刪除。 – Apurva 2015-04-03 07:21:39

+1

正如@Apurva正確指出的那樣,你有一個**無用的**(這對錶演不利)'佈局嵌套'。請移除LinearLayout父項。 – 2015-04-03 07:25:42

+0

謝謝u @Apurva,但實際上線性佈局用於動態改變bg顏色,並且相對有選擇器,所以我需要使用Linear layout ... 因爲使用動態顏色我無法更改bg顏色否? 使線性使用.. – 2015-04-03 10:20:06

回答

2

請檢查您的錯誤日誌爲自定義網格項目佈局xml,我已檢查您的代碼與示例它給我輸出。 可能是您的圖片已損壞。檢查您的drawable/ic_launcher文件或您的資源文件夾替換爲另一個圖像並嘗試。

+0

嘿非常感謝你...我得到了一個答案... ic_launcher被破壞了..謝謝你 – 2015-04-03 10:13:20

+0

你最歡迎... – 2015-04-03 10:26:50

0

請分享你想要什麼樣的視圖和。當您使用RelativeLayout它一定會隱藏一些看法 - Layout_rightof,Layout_above通過設置這些屬性可以設置適當的意見

For example:

<ImageButton 
     android:id="@+id/imgMenu" 
     android:layout_width="..." 
     android:layout_height="..." 
     android:layout_gravity="..." 
     android:background="@drawable/bottom_key" 
     ... /> 

    <TextView 
     android:id="..." 
     android:layout_width="..." 
     android:layout_toRightOf="@+id/imgMenu" 
     android:layout_height="..." 
     android:layout_marginLeft="10dp" 
     android:gravity="center" 
      /> 

以上內容顯示Textview是對我的ImageView的。

- 你好試試你的Imageview固定的高度和寬度檢查會發生什麼。

+0

我無法發佈圖像,因爲我有較少的聲譽...所以 – 2015-04-03 08:41:52

+0

,你可以看到,佈局具有簡單的代碼,只有一些屬性 – 2015-04-03 08:44:28

+0

但由於你的代碼中的相對佈局,它隱藏你的imageview設置正確! – Hardy 2015-04-03 09:00:59

0
  1. 刪除不必要的LinearLayout

  2. 通過FrameLayout包裝你ImageView爲:

    <FrameLayout 
        android:layout_width="48dp" 
        android:layout_height="48dp" 
        android:layout_above="@+id/text" 
        android:layout_alignParentTop="true" 
        > 
    
    <ImageView 
        android:id="@+id/picture" 
        android:layout_width="match_parent" 
         android:layout_height="match_parent" 
         android:adjustViewBounds="true" 
         android:layout_gravity="center" 
         android:gravity="center" 
         android:layout_marginBottom="5dp" 
         android:padding="5dp" 
         android:src="@drawable/ic_launcher" /> 
    
    </FrameLayout> 
    

希望這有助於!

+0

實際上,線性佈局用於更改背景顏色... 相對佈局有選擇器和線性只有背景顏色。 – 2015-04-03 08:43:12

+0

而我用這個框架佈局的烏爾代碼,但它仍然顯示相同的輸出... 它隱藏該imageview – 2015-04-03 08:55:57

+0

你可以嘗試'frameLayout'具有特定的大小,看我的答案 – Xcihnegn 2015-04-03 09:21:03

相關問題