![]() |
Ответ: Помогите новичку!
Цитата:
|
Ответ: Помогите новичку!
То есть нельзя чтобы несколько классов имели доступ к одному и тому же экземпляру класса х?
|
Ответ: Помогите новичку!
Цитата:
|
Ответ: Помогите новичку!
Как вариант, можно создать отдельный класс для хранения глобальных указателей, и через него работать с объектами.
Типа: Код:
public class Globals { Код:
Globals.hero = new Hero("John"); Код:
if(Globals.hero != null && Globals.hero.getHealth() > 10) { |
Ответ: Помогите новичку!
Точно! Спасибо большое! А то я запутался немного))
|
Ответ: Помогите новичку!
Допустим, что в Game создан экземпляр Global:
global = new Global(this); В Global созданы экземпляры 2 разных View. Как в Game задать setContentView() через эти 2 экземпляра? |
Ответ: Помогите новичку!
Научись формировать вопрос, в понятный текст, чтобы он давал читателю представление ЧТО ты пытаешься сделать, и КАК ты это уже попробовал сделать.
Если чётко сформируешь вопрос, то в 90% случаях ответишь на свой же вопрос сразу. Если таки не смог, по крайней мере другие смогут понять вопрос и помочь. |
Ответ: Помогите новичку!
В Game создан экземпляр Global. В Global описываются все остальные классы: объекты и вьюхи для Game (как предложил Жека), так как хочу использовать одну активити и несколько вьюх. Но не получается установать вьюхи для отображения в Game. Если в Global объявляю Game как final то eclipse ругается на конструкторы вьюх (что Game не инициализируется, хотя раньше делал абсолютно так же), если Game без final, то eclipse компилирует без ошибок, но при старте активити Game приложение вылетает. Вот так)
|
Ответ: Помогите новичку!
Я не предлагал создавать global через new. Я предлагал сделать все его члены статическими, чтобы осуществлять доступ не через экземплял глобал'а, а через имя класса. И не финальными они должны быть, т.к. финальные поля нужно либо в объявлении инициализировать, либо в конструкторе, но такой вариант не подходит, т.к. ты заранее не захочешь всё создавать в конструкторе и не сможешь (в случае с активити).
Делай так в классе Global: Код:
public static Game game; Код:
Global.game = this; И всё, однажды присвоив значение, сможешь везде с ним работать. |
Ответ: Помогите новичку!
Вроде понял. Буду пробовать.
|
Ответ: Помогите новичку!
Спасибо, Жека! Всё работает!:)
Как можно отследить/заблокировать нажатие кнопки "назад"/"меню"? |
Ответ: Помогите новичку!
Посмотри статейку: Создание меню
|
Ответ: Помогите новичку!
Как можно сделать прокрутку? Нужно для прокрутки карты, которая не влезает на экран. Пробовал через MotionEvent.ACTION_MOVE, но получается какая-то ересь.
|
Ответ: Помогите новичку!
Я для прокрутки использую ScrollView.
В методе onCreate: PHP код:
|
Ответ: Помогите новичку!
А как сделать это без LinearLayout? То есть я использую
case MotionEvent.ACTION_DOWN: x = (int)event.getX(); y = (int)event.getY(); для определения области касания, так как не использую кнопки. Можно ли реализовать "сырую" (с получением и ручной обработкой координат) прокрутку, без использования layout? |
Часовой пояс GMT +4, время: 11:32. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot