Класс бросил исключение при расширении пользовательского Относительного Расположения?

Я получаю это исключение, когда я пытаюсь расшириться

07-22 19:15:39.903: ERROR/AndroidRuntime (3810): Вызванный: java.lang. ClassCastException: android.widget. RelativeLayout

У меня есть базовый класс:

public class UIBase extends RelativeLayout {}

И более определенный класс:

public class Countdown extends UIBase {}

Затем я пытаюсь расшириться и это исключения:

UIBase newView = (UIBase) inflater.inflate(layoutId, parent, true);

Вот XML-файл:

<?xml version="1.0" encoding="utf-8"?>
<com.Countdown xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/countdown"
    android:layout_alignParentTop="true"
    android:layout_alignParentRight="true"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    >
<TextView
    android:id="@+id/countdownText"
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"
    android:layout_centerInParent="true"
    android:text="0" />
</com.Countdown>

Кто-либо знает то, что я делаю неправильно?

9
задан Joren 23 July 2010 в 02:36
поделиться

1 ответ

Согласно документации, inflate () возвращает "корневое представление расширенной иерархии. Если root был указан и attachToRoot истинно, это root; в противном случае это корень расширенного XML. file. "

Поскольку вы передали значение true, возвращаемое значение -" parent ", которое, очевидно, не является производным от UIBase.

17
ответ дан 4 December 2019 в 12:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: