Siento que solía saber cómo hacer esto, pero actualmente estoy dibujando un espacio en blanco. Tengo una clase que se extiende desde Ver (Card
) y escribí un diseño para ella en XML. Lo que quiero hacer es configurar la Vista de Card
para que sea la Vista XML en el constructor, para que pueda usar los métodos en Card
para establecer TextView
sy otras cosas. ¿Alguna sugerencia? Código de abajo:¿Usar el diseño XML como vista para ver la subclase?
Card.java:. (he View.inflate(context, R.layout.card_layout, null);
allí como un ejemplo de lo que quiero hacer, pero que no está funcionando Básicamente quiero la clase que sea la interfaz para la vista, y con el fin de hacer que necesito para asignar alguna manera el diseño de XML para la vista. ¿debo usar algo en la línea de setContentView(View view)
? no hay tal método en la clase View
, pero ¿hay algo parecido?)
public class Card extends View {
TextView tv;
public Card(Context context) {
super(context);
View.inflate(context, R.layout.card_layout, null);
tv = (TextView) findViewById(R.id.tv);
}
public Card(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
View.inflate(context, R.layout.card_layout, null);
tv = (TextView) findViewById(R.id.tv);
}
public Card(Context context, AttributeSet attrs) {
super(context, attrs);
View.inflate(context, R.layout.card_layout, null);
tv = (TextView) findViewById(R.id.tv);
}
public void setText(String text) {
tv.setText(text);
}
}
card_layout. xml:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="336dp"
android:layout_height="280dp"
android:layout_gravity="center"
android:background="@drawable/card_bg"
android:orientation="vertical" >
<TextView
android:id="@+id/tv"
android:layout_height="fill_parent"
android:layout_width="wrap_content"
android:textSize="24dp"
/>
</LinearLayout>
Pensé en hacer que mi clase extendiera 'LinearLayout' y luego pensé que era una idea tonta.¡Lo intenté después de ver este comentario y funcionó perfectamente! ¡Muchas gracias! – roboguy12