2016-06-15 3 views
0

[Проблема решена] Я не знаю, почему высота: wrap_content не работает, как я и ожидал, я просто изменил его, чтобы соответствовать родительскому. Во всяком случае, проблема решена. Не хочу больше тратить время на эту странную вещь.android LinearLayout display issue

Я использую LinearLayout для создания CardView. Однако я получаю эту странную ситуацию. Код Jinesh Francis работает отлично, но когда я копирую и вставляю конфигурацию в свой код, проблема остается прежней.

Normal Title

Long Long Title

Почему не может быть полностью отображается длинное название?

Компоновка, как показано ниже:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="wrap_content"> 

<android.support.v7.widget.CardView 
    android:id="@+id/movieCardView" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_marginTop="5dp" 
    android:layout_marginBottom="5dp" 
    android:layout_gravity="center" 
    android:background="@color/bacgroundCardView"> 

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

     <ImageView 
      android:id="@+id/movieImage" 
      android:layout_width="70dp" 
      android:layout_height="90dp" 
      android:layout_marginBottom="4dp" 
      android:layout_marginLeft="4dp" 
      android:layout_marginRight="4dp" 
      android:layout_marginTop="4dp" 
      android:scaleType="fitXY" 
      android:src="@drawable/selfie" /> 

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

      <LinearLayout 
       android:layout_width="match_parent" 
       android:layout_weight="1" 
       android:layout_height="0dp"> 

       <TextView 
        android:id="@+id/movieTitle" 
        android:layout_width="0dp" 
        android:layout_height="wrap_content" 
        android:layout_weight="8" 
        android:textSize="15dp" 
        android:textColor="#000" 
        android:textStyle="bold" 
        android:text="Long long long long long long long long Title"/> 

       <TextView 
        android:id="@+id/movieRating" 
        android:layout_width="0dp" 
        android:layout_height="wrap_content" 
        android:layout_weight="0.7" 
        android:textSize="12dp" 
        android:textStyle="bold" 
        android:text="7.0" /> 

       <CheckBox 
        android:id="@+id/checkBox" 
        android:layout_width="0dp" 
        android:layout_weight="1" 
        android:layout_height="wrap_content" 
        android:scaleX="0.70" 
        android:scaleY="0.70" /> 

      </LinearLayout> 

      <TextView 
       android:id="@+id/movieDescription" 
       android:layout_width="match_parent" 
       android:layout_height="0dp" 
       android:layout_weight="1" 
       android:textSize="10dp" 
       android:text="So many many many many many many many many many many many many description" /> 

     </LinearLayout> 

    </LinearLayout> 

</android.support.v7.widget.CardView> 

Спасибо за любые предложения

+0

Это не достаточно, чтобы написать только теги XML. Отредактируйте сообщение и включите также атрибуты. – Karakuri

+0

опубликуйте полный файл макета –

+0

, вы используете LinearLayout в пределах relativeLayout и задаете вес заголовка .. вот почему он дает этот вывод – NehaK

ответ

0

Попробуйте с линейными раскладок с весами, как это

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 
    <ImageView 
     android:layout_width="80dp" 
     android:layout_height="100dp" 
     android:src="@drawable/demo2"/> 
    <LinearLayout 
     android:layout_width="match_parent" 
     android:orientation="vertical" 
     android:layout_height="wrap_content"> 
     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_weight="1" 
      android:layout_height="0dp"> 
      <TextView 
       android:layout_width="0dp" 
       android:layout_height="wrap_content" 
       android:textSize="20sp" 
       android:layout_weight="1" 
       android:textColor="#000" 
       android:textStyle="bold" 
       android:text="Long Long Long Long Long Tittle"/> 
      <TextView 
       android:layout_width="0dp" 
       android:layout_height="wrap_content" 
       android:layout_weight="0.25" 
       android:text="7.0"/> 
      <CheckBox 
       android:layout_width="0dp" 
       android:layout_weight=".25" 
       android:layout_height="wrap_content" /> 
     </LinearLayout> 
     <TextView 
      android:layout_width="match_parent" 
      android:text="so many many many many many many many many many many many many many many many many description" 
      android:layout_height="0dp" 
      android:layout_weight="1"/> 
    </LinearLayout> 
</LinearLayout> 

Я получил этот выход

Output

+0

Спасибо за вашу помощь Jinesh. Забавно, что ваш код работает отлично, но когда я копирую и вставляю конфигурацию по строкам из вашего кода в мой, проблема остается прежней, я чувствую себя обманутой Android Studio, – Rangtian

2

набор RelativeLayout недвижимости настроить макет

Relative Layout Property are below 
alignparentLeft,alignLeft 
alignparentRight,alignRight 
alignparentBottom,alignBottom 
alignparentTop,alignTop 
+0

Спасибо за вашу помощь Divyesh, кажется, что эти свойства не являются ключом. – Rangtian