私はこれを行う方法を知っていたかのように感じますが、私は現在空白を描いています。私はView(Card
)から拡張されたクラスを持っており、XMLのレイアウトを書いています。私がしたいのは、Card
のビューをコンストラクタのXMLビューに設定することです。そのため、Card
のメソッドを使用してTextView
とそれ以外を設定することができます。助言がありますか?以下のコード:ビューサブクラスのビューとしてXMLレイアウトを使用しますか?
Card.java:(私は何をしたいのかの例としてそこにありますが、うまくいきません。私は基本的に、そのクラスをViewのインターフェースにしたいと思います。私は何とかビューにXMLレイアウトを割り当てる必要があります。私はsetContentView(View view)
の線に沿って何かを使用していますか?View
クラスには、このような方法はありませんが、それのようなものがあるのでしょうか?それ)
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>
私のクラスが 'LinearLayout'を拡張していると思って、それがダムのアイデアだと思った。私はこのコメントを見て、それを試して、それは完全に働いた!どうもありがとうございました! – roboguy12