Я использовал холст для рисования некоторых растровых изображений. Здесь все прекрасно, я использовал расширение класса и использовал конструктор super (context, attributeset); Теперь я хочу использовать методы из другого класса, но как заставить это работать, насколько я знаю, что класс, расширяющий представление, нуждается в этих двух конструкторах, они должны быть настроены на работу с андроидом (я попытался изменить его, и он говорит мне что для этого необходим такой конструктор, потому что он расширяется).Вызов методов (с использованием конструктора) из расширенного вида класса
Это мой код:
public class GameBoard extends View{
private static final String tag = "GameBoard";
private Paint p;
private Load load;
public GameBoard(Context context, Load load) {
super(context);
p = new Paint();
this.load = load;
// Существует много больше в этом классе, но это не дело здесь.
}
И это другой класс:
public class Load{
Context context;
// TODO нагрузка эта информация о из файлов и сделать текстуры подходят с размером экрана телефона INT mSize = 99; int tSize = 48; int screenCoords = 160; int rectX = 10; int rectY = 16;
String coordsFileName ="coordsData.txt";
public Load (Context context) {
this.context = context;
}
EDIT:
Я нашел решение для всех, с той же проблемой. Просто создать объект в классе-например: простирающуюся класс: // выше конструктор объекта возвещайте от другого класса
private OtherClass otherclass;
// и его конструктора вы просто создать новый объект
this.otherclass = new OtherClass();
Теперь я хочу использовать методы из другого класса, но, как заставить это работать, можете ли вы быть более конкретным? – Triode
@Triode Я хочу использовать, например, метод getMapSize, который находится при загрузке класса. Чтобы использовать его, мне нужна загрузка конструктора, но GameBoard уже получил конструктор fix, потому что он расширяется. – G4meM0ment