Ошибка «Должен быть указан атрибут высоты» - PullRequest
4 голосов
/ 06 октября 2011

Я пытаюсь устранить ошибку Android «Вы должны указать атрибут layout_height».В DDMS сообщение об ошибке выглядит следующим образом:

10-06 12:45:12.431: WARN/WindowManager(62): HistoryRecord{406287f8 com.learning.android.yamba/.TimelineActivity} failed creating starting window
10-06 12:45:12.431: WARN/WindowManager(62): java.lang.RuntimeException: Binary XML file line #25: You must supply a layout_height attribute.
10-06 12:45:12.431: WARN/WindowManager(62):     at android.content.res.TypedArray.getLayoutDimension(TypedArray.java:491)
10-06 12:45:12.431: WARN/WindowManager(62):     at android.view.ViewGroup$LayoutParams.setBaseAttributes(ViewGroup.java:3599)
10-06 12:45:12.431: WARN/WindowManager(62):     at android.view.ViewGroup$MarginLayoutParams.<init>(ViewGroup.java:3678)

Мой xml-файл TimelineActivity выглядит следующим образом:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" style="@style/activity">
    <TextView android:id="@+id/textView1" android:layout_width="wrap_content"
       android:layout_height="wrap_content" style="@style/title"
       android:text="@string/titleTimeline" android:layout_gravity="center">
    </TextView>
    <ListView style="@style/editbox" android:id="@+id/listStatuses"
    android:cacheColorHint="#00000000">
    </ListView>
</LinearLayout>

Ниже перечислены стили, на которые ссылаются:

<style name="activity">
    <item name="android:orientation">vertical</item>
    <item name="android:layout_width">fill_parent</item>
    <item name="android:layout_height">fill_parent</item>
    <item name="android:background">@drawable/background</item>
 </style>

<style name="title">
    <item name="android:textSize">25dp</item>
    <item name="android:gravity">center</item>
    <item name="android:layout_width">fill_parent</item>
    <item name="android:layout_height">wrap_content</item>
</style>

<style name="editbox">
    <item name="android:layout_width">fill_parent</item>
    <item name="android:layout_height">fill_parent</item>
    <item name="android:layout_weight">1</item>
    <item name="android:background">#609f</item>
    <item name="android:padding">10dp</item>
    <item name="android:layout_margin">15dp</item>
    <item name="android:textSize">15dp</item>
 </style>

фон окна не виден через список, хотя я установил фон списка прозрачным.Не уверен, что оба связаны.

Ответы [ 2 ]

1 голос
/ 18 августа 2012

Смотрите здесь для решения:

https://stackoverflow.com/a/5728794

Возможно, проблема в том, что вы использовали пользовательскую тему в файле AndroidManifest.xml. Это не имеет ничего общего с вашим макетом.

0 голосов
/ 16 июня 2012

Я знаю, что это несколько месяцев, но я думаю, что у меня есть для вас ответ.

Вы создаете значение измерения в стиле xml:

<dimen name="layoutheight_title">wrap_content</dimen> 
<dimen name="layoutwidth_title">fill_parent</dimen> 

Затем вы ссылаетесьзначение размера в макетах xml при необходимости.

android:layout_height="@dimen/layoutheight_title" 
android:layout_width="@dimen/layoutwidth_title" 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...