2016-11-22 2 views
0

Я портирование несколько проектов, над из Затмения в Android Studio и в одном я перебирать различные ошибки XML и в одном файле у меня есть ...Требуемый атрибут для тега-переключателя?

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:drawable="@drawable/downarrow_pressed" 
      android:state_pressed="true" /> <!-- pressed --> 
    <item android:drawable="@drawable/downarrow_normal" /> <!-- default --> 
</selector> 

... и Android-студия говорит, что тегу селектора не хватает двух обязательных атрибутов: layout_height и layout_width.

Три вопроса:

  1. Каковы правильные значения для этих атрибутов в данном контексте?
  2. Почему Eclipse не обозначил это? (он строит и работает отлично от Eclipse)
  3. Я искал через developer.android.com, и я не могу понять, где указать, какие атрибуты необходимы для тега. Где это?
+1

'selector' не имеет' layout_width' или 'layout_height'. Если вы получите эту ошибку, то она думает, что вы пытаетесь загрузить этот файл как макет, а не ресурс, который можно использовать. См. Https://developer.android.com/guide/topics/resources/drawable-resource.html#StateList –

+0

Где находится указанный выше XML-файл в вашем проекте? – San

+0

'... и Android Studio говорит, что в теге селектора отсутствуют два обязательных атрибута: layout_height и layout_width.' Я скорее догадываюсь, что он говорит вам, что в селекторе ** в файле макета ** отсутствуют эти атрибуты. –

ответ

0

# 3 - Documentation is here

Требование только для selector тега является xmlns:android, которое может быть только одно, что значение строки.

<selector xmlns:android="http://schemas.android.com/apk/res/android"

Это может иметь много <item> элементов, где единственным требованием является android:drawable.

Я думаю, что ошибка относится к макету, который содержит этот селектор, или вы неправильно поняли ошибку. Eclipse не отметил это, потому что Eclipse не запускает задачи Gradle, такие как lint.

+0

текст сообщения об ошибке: «Селектор элементов не имеет обязательного атрибута: layout_height», и он отображается как ошибка, а не предупреждение. – user316117

+0

. Я посмотрел ссылку на вашу документацию, и я не вижу, где она говорит, что layout_height является обязательным атрибутом для селектора элементов. Как я получу это требование из документации, с которой вы связаны? – user316117

+0

У меня нет этого атрибута, как я уже сказал. Вы должны отредактировать свой вопрос с помощью экрана. Если вы считаете, что это ошибка, вы можете сообщить об этом на сайте Android Studio –

Смежные вопросы