2017-07-12 3 views
0

J'ai ce code où je veux que 4 boutons apparaissent dans une taille donnée et un textview pour occuper l'espace restant. ce code tout en rendant correctement sur le concepteur de studio Android, mais sur l'appareil, il semble que textview prend la propriété wrapcontent au lieu de layoutweight. Ai-je manqué quelque chose?problème d'alignement de disposition linéaire sur l'appareil lors du rendu correct sur le concepteur

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:id="@+id/bg_now_playing" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="@color/primaryColor" 
    android:orientation="vertical" 
    tools:ignore="RtlHardcoded" 
    android:baselineAligned="false"> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:alpha="0.7" 
     android:background="@color/miniplayer_color" 
     android:orientation="vertical"> 


     <!--few components--> 
     <LinearLayout 
      android:id="@+id/bottom_controls" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:orientation="vertical"> 

      <LinearLayout 
       android:id="@+id/options" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:background="@color/now_playing_extra_options_bg" 
       android:gravity="center_vertical" 
       android:orientation="horizontal"> 

       <ImageView 
        android:id="@+id/nowplaying_favourites" 
        android:layout_width="@dimen/nowplaying_icon_dimension" 
        android:layout_height="@dimen/nowplaying_icon_dimension" 
        android:layout_marginLeft="@dimen/nowplaying_button_padding" 
        android:src="@drawable/favorite_icon" /> 

       <ImageView 
        android:id="@+id/download_btn" 
        android:layout_width="@dimen/nowplaying_icon_dimension" 
        android:layout_height="@dimen/nowplaying_icon_dimension" 
        android:layout_margin="@dimen/nowplaying_button_padding" 
        android:src="@drawable/download_icon" /> 

       <ImageView 
        android:id="@+id/now_playing_share_btn" 
        android:layout_width="@dimen/nowplaying_icon_dimension" 
        android:layout_height="@dimen/nowplaying_icon_dimension" 
        android:layout_marginRight="@dimen/nowplaying_button_padding" 
        android:src="@drawable/share_icon" /> 

       <views.CustomTextView 
        android:id="@+id/caller_tune" 
        android:layout_width="0dp" 
        android:layout_height="wrap_content" 
        android:layout_weight="1" 
        android:background="@drawable/roundcorner_white" 
        android:fontFamily="@string/roboto_regular" 
        android:text="@string/tune" 
        android:textAlignment="center" 
        android:textColor="@color/miniplayer_color" 
        android:textSize="@dimen/button_text_size" 
        android:textStyle="bold" /> 

       <ImageView 
        android:id="@+id/equalizer_now_playing" 
        android:layout_width="@dimen/nowplaying_icon_dimension" 
        android:layout_height="@dimen/nowplaying_icon_dimension" 
        android:layout_margin="@dimen/nowplaying_button_padding" 
        android:gravity="right" 
        android:src="@drawable/equalizer_icon" /> 

      </LinearLayout> 

     </LinearLayout> 

     <!--few more components--> 
    </LinearLayout> 
</LinearLayout> 

Répondre

1

Je pense que cela pourrait poser un problème avec votre vue personnalisée. Parce que j'ai placé juste textview ça a bien fonctionné. Voici mon exemple de code avec des exemples d'icônes et de statistiques.

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:id="@+id/bg_now_playing" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:background="@android:color/darker_gray" 
android:baselineAligned="false" 
android:orientation="vertical" 
tools:ignore="RtlHardcoded"> 

<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:alpha="0.7" 
    android:background="@color/colorPrimary" 
    android:orientation="vertical"> 


    <!--few components--> 
    <LinearLayout 
     android:id="@+id/bottom_controls" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="vertical"> 

     <LinearLayout 
      android:id="@+id/options" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:background="@android:color/white" 
      android:gravity="center_vertical" 
      android:orientation="horizontal"> 

      <ImageView 
       android:id="@+id/nowplaying_favourites" 
       android:layout_width="30dp" 
       android:layout_height="30dp" 
       android:layout_marginLeft="4dp" 
       android:src="@android:drawable/ic_delete" /> 

      <ImageView 
       android:id="@+id/download_btn" 
       android:layout_width="30dp" 
       android:layout_height="30dp" 
       android:layout_marginLeft="4dp" 
       android:src="@android:drawable/ic_delete" /> 

      <ImageView 
       android:id="@+id/now_playing_share_btn" 
       android:layout_width="30dp" 
       android:layout_height="30dp" 
       android:layout_marginLeft="4dp" 
       android:src="@android:drawable/ic_delete" /> 

      <views.CustomTextView 
       android:id="@+id/caller_tune" 
       android:layout_width="0dp" 
       android:layout_height="wrap_content" 
       android:layout_weight="1" 
       android:background="@drawable/roundcorner_white" 
       android:fontFamily="@string/roboto_regular" 
       android:text="@string/tune" 
       android:textAlignment="center" 
       android:textColor="@color/miniplayer_color" 
       android:textSize="@dimen/button_text_size" 
       android:textStyle="bold" /> 

      <ImageView 
       android:id="@+id/equalizer_now_playing" 
       android:layout_width="30dp" 
       android:layout_height="30dp" 
       android:layout_marginLeft="4dp" 
       android:gravity="right" 
       android:src="@android:drawable/ic_delete" /> 

     </LinearLayout> 

    </LinearLayout> 

    <!--few more components--> 
</LinearLayout> 

+0

ne fonctionne même pas avec vue texte – Ankit

+0

Quelle est la mise en page de parent de disposition linéaire dans votre activité? –

+0

parent est la disposition linéaire uniquement. extrait de code mis à jour dans la question. – Ankit