По сути, я пытаюсь добиться того, чтобы я хотел, чтобы холст, на который я мог передавать растровые изображения, отображался на экране вместе с остальными объектами моего просмотра (кнопками, текстовыми представлениями и т. Д.).
Я создалкласс для представления холста, подобный такому (пока он мало что делает):
public class Foo extends View {
public Foo(Context context) {
super(context);
}
@Override
public void onDraw(Canvas canvas) {
Paint paint = new Paint();
paint.setStyle(Paint.Style.FILL);
// draw a solid blue circle
paint.setColor(Color.BLUE);
canvas.drawCircle(20, 20, 15, paint);
}
}
Теперь вот мое основное занятие:
public class Main extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button switchLeft = (Button) findViewById(R.id.switch_left);
switchLeft.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
//TODO
}
});
Button switchRight = (Button) findViewById(R.id.switch_left);
switchRight.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
//TODO
}
});
Foo myCanvas = new Foo(this);
setContentView(myCanvas);
}
}
Когда я вызываю setContentView для холстапросмотр объекта, остальные мои виды исчезают с экрана.Как я могу вызвать этот объект просмотра, не потеряв остальные мои виды?
Спасибо.