我已经为按钮制作了自己的布局。Normaly 我通过这个创建一个视图:
LayoutInflater inflater = LayoutInflater.from(getActivity());
myButton = inflater.inflate(R.layout.mybutton, null, false);
现在我的想法是类 myButton 扩展了 View,我不必为每个 Button 编写这些行。但是我怎样才能在 myButton 构造函数中引入这两行呢?我不能写:
public MyButton(Context c)
{
this = inflater.inflate(R.layout.mybutton, null, false);
}
如何构建一个始终具有相同布局的自定义视图,以便我可以构建一个具有预加载布局的新 myButton,如下所示:
MyButton myButton = new MyButton();
这是我想用于 myButton 的布局:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/cell_shape"
android:orientation="vertical"
android:paddingBottom="@dimen/PaddingBottom"
android:paddingLeft="@dimen/PaddingHorizontal"
android:paddingRight="@dimen/PaddingHorizontal"
android:paddingTop="@dimen/PaddingTop" >
<TextView
android:id="@+id/Fach"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/MarginTop"
android:text=""
android:textAppearance="?android:attr/textAppearanceMedium"
android:textStyle="bold" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/Klasse"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="@dimen/MarginTop"
android:text="" />
<TextView
android:id="@+id/Raum"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="right"
android:text="" />
</LinearLayout>