当我试图膨胀时,我得到了这个例外
07-22 19:15:39.903:ERROR/AndroidRuntime(3810):引起:java.lang.ClassCastException:android.widget.RelativeLayout
我有一个基类:
public class UIBase extends RelativeLayout {}
Run Code Online (Sandbox Code Playgroud)
还有一个更具体的课程:
public class Countdown extends UIBase {}
Run Code Online (Sandbox Code Playgroud)
然后我尝试膨胀,它例外:
UIBase newView = (UIBase) inflater.inflate(layoutId, parent, true);
Run Code Online (Sandbox Code Playgroud)
这是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>
Run Code Online (Sandbox Code Playgroud)
有谁知道我做错了什么?
Ebo*_*ike 17
根据文档,inflate()返回"膨胀层次结构的根视图.如果提供了root并且attachToRoot为true,则为root;否则它是膨胀的XML文件的根."
由于您传入了true,因此返回值为"parent",显然不是从UIBase派生的.
| 归档时间: |
|
| 查看次数: |
4744 次 |
| 最近记录: |