Android-包括xml中的自定义线性布局

时间:2012-06-15 12:08:33

标签: android android-linearlayout android-custom-view

我创建了一个扩展LinearLayout的Java类,如下所示

    public class News extends LinearLayout{

    Context context;

     public News(Context context) {
    super(context);
     this.context=context;

     ViewFlipper viewFlipper=new ViewFlipper(context);
     viewFlipper.setLayoutParams(this.getLayoutParams());
    this.addView(viewFlipper);

    }

现在可以将它包含在xml布局中,如下所示:

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
            xmlns:app="http://schemas.android.com/apk/res/com.example.android.apis"
            android:orientation="vertical"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">



        <com.example.android.apis.view.LabelView
                android:background="@drawable/green"
                android:layout_width="match_parent"
                android:layout_height="wrap_content" 
                app:text="Green" app:textColor="#ffffffff" />

    </LinearLayout>

2 个答案:

答案 0 :(得分:2)

 <com.yourcompanyname.projectname.News<<<change here and check path is proper
                android:background="@drawable/green"
                android:layout_width="match_parent"
                android:layout_height="wrap_content" 
                app:text="Green" app:textColor="#ffffffff" />

答案 1 :(得分:1)

是的,但您也应该覆盖其他构造函数。

<com.yourproject.package.News
    android:background="@drawable/green"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" 
    app:text="Green" app:textColor="#ffffffff" />

此外,xmlns:app =“http://schemas.android.com/apk/res/com.example.android.apis”也需要更新到您的应用程序包。