我有延伸的课程LinearLayout
在构造函数中我调用
LayoutInflater inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
LinearLayout view = (LinearLayout)inflater.inflate(R.layout.titlebar, this, true);
我可以在这个视图中访问视图,但它没有被绘制。我认为原因是这个视图的 mParent 仍然为空。但为什么?Partent 应该是这个(扩展 LinearLayout 的类)
这里的xml:
<RelativeLayout android:id="@+id/header"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="35px"
android:layout_width="fill_parent"
android:background="@drawable/titlebar_bg">
<TextView android:layout_width="wrap_content"
android:textColor="#000000"
android:text="test"
android:id="@+id/title"
android:layout_alignParentTop="true"
android:layout_marginLeft="10pt"
android:layout_height="wrap_content"
android:textSize="10pt"
android:layout_marginTop="3dip"></TextView>
<TextView android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:text="10:09 AM"
android:id="@+id/time"
android:textColor="#000000"
android:layout_alignParentRight="true"
android:layout_marginRight="5px"
android:layout_marginTop="3px"
android:textSize="10pt"></TextView></RelativeLayout>
解决方案
<merge xmlns:android="http://schemas.android.com/apk/res/android">
<TextView android:layout_width="wrap_content"
android:textColor="#000000"
android:text="test"
android:id="@+id/title"
android:layout_alignParentTop="true"
android:layout_marginLeft="10pt"
android:layout_height="wrap_content"
android:textSize="10pt"
android:layout_marginTop="3dip"></TextView>
<TextView android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:text="10:09 AM"
android:id="@+id/time"
android:textColor="#000000"
android:layout_alignParentRight="true"
android:layout_marginRight="5px"
android:layout_marginTop="3px"
android:textSize="10pt"></TextView>
使用合并标签并使用 xml 标签。
<package.Titlebar
android:id="@+id/testtitlebar"
android:layout_height="35px"
android:layout_width="fill_parent"
android:background="@drawable/titlebar_bg"></package.Titlebar>
这是它在课堂上的样子:
LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View view = inflater.inflate(R.layout.titlebar, this);
没有 onLayout 功能!!!我的错误之一