2017-06-04 32 views
-2

我正在使用Android工作室,並在xml中顯示類似Facebook中的評論。我的問題是,其中一個按鈕comment_more_options按鈕並未顯示在我的實際設備運行中,在Android Studio提供的模擬器上,但在我的xml預覽中顯示。但是,當我點擊按鈕的位置時,在應用程序運行中,附加到它的菜單顯示正常。我究竟做錯了什麼?圖片按鈕不顯示,點擊正在工作

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

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

     <ImageView 
      android:id="@+id/comment_profile_picture" 
      android:layout_width="40sp" 
      android:layout_height="40sp" 
      android:layout_gravity="left|center_vertical" 
      android:layout_margin="12dp" 
      android:layout_weight="0.26" 
      app:srcCompat="@mipmap/ic_launcher" /> 

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

      <TextView 
       android:id="@+id/comment_displayName" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_gravity="left|center_vertical" 
       android:layout_margin="4dp" 
       android:layout_weight="1" 
       android:gravity="bottom|left" 
       android:text="Display Name" 
       android:textAppearance="@android:style/TextAppearance.Material.Menu" /> 

      <TextView 
       android:id="@+id/comment_handle" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_gravity="left|center_vertical" 
       android:layout_marginBottom="6dp" 
       android:layout_marginLeft="8dp" 
       android:layout_marginRight="6dp" 
       android:layout_marginTop="2dp" 
       android:layout_weight="1" 
       android:gravity="top|left" 
       android:text="Handle" /> 

     </LinearLayout> 

     <ImageButton 
      android:id="@+id/comment_more_options" 
      android:layout_width="32dp" 
      android:layout_height="32dp" 
      android:layout_gravity="left" 
      android:layout_margin="1dp" 
      android:layout_weight="0.50" 
      android:background="@android:color/transparent" 
      android:visibility="visible" 
      app:srcCompat="@drawable/ic_more_vert_black_24dp" /> 

    </LinearLayout> 

    <TextView 
     android:id="@+id/comment_content" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="0" 
     android:text="@string/enter_comment" 
     android:textSize="18sp" /> 

</LinearLayout> 

回答

1

#。將屬性android:weightSum="1.76"添加到子項LinearLayout

#。而不是使用app:srcCompat="@drawable/ic_more_vert_black_24dp",請使用屬性android:src="@drawable/ic_more_vert_black_24dp"

試試這個:

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

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

     <ImageView 
      android:id="@+id/comment_profile_picture" 
      android:layout_width="40sp" 
      android:layout_height="40sp" 
      android:layout_gravity="left|center_vertical" 
      android:layout_margin="12dp" 
      android:layout_weight="0.26" 
      android:src="@mipmap/ic_launcher" /> 

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

      <TextView 
       android:id="@+id/comment_displayName" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_gravity="left|center_vertical" 
       android:layout_margin="4dp" 
       android:layout_weight="1" 
       android:gravity="bottom|left" 
       android:text="Display Name" 
       android:textAppearance="@android:style/TextAppearance.Material.Menu" /> 

      <TextView 
       android:id="@+id/comment_handle" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_gravity="left|center_vertical" 
       android:layout_marginBottom="6dp" 
       android:layout_marginLeft="8dp" 
       android:layout_marginRight="6dp" 
       android:layout_marginTop="2dp" 
       android:layout_weight="1" 
       android:gravity="top|left" 
       android:text="Handle" /> 

     </LinearLayout> 

     <ImageButton 
      android:id="@+id/comment_more_options" 
      android:layout_width="32dp" 
      android:layout_height="32dp" 
      android:layout_gravity="left" 
      android:layout_margin="1dp" 
      android:layout_weight="0.50" 
      android:background="@android:color/transparent" 
      android:visibility="visible" 
      android:src="@drawable/ic_more_vert_black_24dp" /> 

    </LinearLayout> 

    <TextView 
     android:id="@+id/comment_content" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="0" 
     android:text="Enter Comment" 
     android:textSize="18sp" /> 

</LinearLayout> 

您還可以使用RelativeLayout。這裏有一個例子:

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

    <RelativeLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content"> 

     <ImageView 
      android:id="@+id/comment_profile_picture" 
      android:layout_width="40sp" 
      android:layout_height="40sp" 
      android:layout_alignParentLeft="true" 
      android:layout_centerVertical="true" 
      android:layout_margin="12dp" 
      android:src="@mipmap/ic_launcher" /> 

     <ImageButton 
      android:id="@+id/comment_more_options" 
      android:layout_width="32dp" 
      android:layout_height="32dp" 
      android:layout_alignParentRight="true" 
      android:layout_centerVertical="true" 
      android:layout_marginRight="8dp" 
      android:background="@android:color/transparent" 
      android:visibility="visible" 
      android:src="@drawable/ic_camera" /> 

     <LinearLayout 
      android:id="@+id/layout_middle" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:orientation="vertical" 
      android:layout_toRightOf="@+id/comment_profile_picture" 
      android:layout_toLeftOf="@+id/comment_more_options" 
      android:layout_marginLeft="8dp" 
      android:layout_marginRight="8dp" 
      android:layout_centerVertical="true"> 

      <TextView 
       android:id="@+id/comment_displayName" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:text="Display Name" 
       android:textAppearance="@android:style/TextAppearance.Material.Menu" /> 

      <TextView 
       android:id="@+id/comment_handle" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_gravity="left|center_vertical" 
       android:layout_marginTop="2dp" 
       android:text="Handle" /> 

     </LinearLayout> 
    </RelativeLayout> 

    <TextView 
     android:id="@+id/comment_content" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_margin="8dp" 
     android:text="Enter Comment" 
     android:textSize="18sp" /> 

</LinearLayout> 

OUTPUT:

enter image description here

希望這將有助於〜

0

用這個代替:

機器人:SRC =」 @ drawable/ic_more_vert_black_24dp「

並確保您的圖標顏色與背景不同。