Пользовательский вид, расширяющий класс представления, но все еще основанный на XML-макете - PullRequest
1 голос
/ 17 августа 2010

Я хочу создать свой собственный пользовательский вид, который должен выглядеть как Crysis-GUI.

Сначала я разработал макет на основе XML и сделал его видимым через setContentView (int остаток) -Method.Работал довольно хорошо.

Но теперь я не хочу идти дальше и рисовать в своем Макете.Поэтому я создал новый класс, позволил ему расширить View и переопределить метод onDraw ().Все идет нормально.Работает как положено

public class RifleView extends View {

public RifleView(Context context) {
    super(context);
}

@Override
protected void onDraw(Canvas canvas) {
    super.onDraw(canvas);
    Paint p = new Paint();
    p.setARGB(255, 255, 0, 0);
    canvas.drawText("Hello World", 20, 20, p);
}

}

Но как я все еще могу использовать свой XML-макет?Я больше не могу делать setContentView, так как же можно добиться такого же эффекта?

1 Ответ

2 голосов
/ 17 августа 2010

Почему вы не можете использовать setContentView? Просто сделайте тег xml следующим образом: <com.mycompany.mypackage.myComponent ... xml attributes an tags </com.mycompany.mypackage.myComponent>

...