@android_ru

Страница 623 из 3205
J
04.12.2016
15:05:03
Ок, спасибо всем
когда из гугла звонят насчёт собеседований, первый вопрос по телефону это как работает HashTable

Anton
04.12.2016
15:05:35
ой а я хз как она работает

Vitaliy
04.12.2016
15:06:24
Вообще везде

Принцип очень простой

Google
Vitaliy
04.12.2016
15:06:49
Надо просто почитать и понять

Это реально нужно, пацаны

J
04.12.2016
15:09:26
ну на практике 95% девелоперов это не нужно :)

Vitaliy
04.12.2016
15:09:54
Для задач по оптимизации таки нужно

Но редко, да

А вот уметь оверрайдить эти методы это святое

J
04.12.2016
15:10:24
ну на практике люди по 10 лет код пишут и максимальный размер коллекции у них 50 элементов

Anton
04.12.2016
15:10:32
в андроиде да

Влад
04.12.2016
15:25:05
Кто нибудь покупал платные уроки на фандроид ?

Anton
04.12.2016
15:25:16
где?

Влад
04.12.2016
15:26:45
Fandroid

Владислав
04.12.2016
15:27:50
платные уроки не нужны

Alex
04.12.2016
15:28:56
Да,не стоит

Google
Влад
04.12.2016
15:30:07
Вот это я и хотел узнать, насколько они адекватные/полезные для начала

Anton
04.12.2016
15:31:18
хуйня какая то

полное говно

http://www.androidhive.info

вот тут класные уроки

J
04.12.2016
15:33:47
вам сюда посоны

https://www.udacity.com/google-scholarships

гугл платит

Alex
04.12.2016
15:35:51
Про юдпсити - согласен

Artem
04.12.2016
15:52:58
Россия ток в пролете

или я плохо смотрел?

Alexey
04.12.2016
15:54:46
https://www.udacity.com/google-scholarships
это совсем для бегинеров ? или для опытных тоже будет полезно?

J
04.12.2016
15:59:40
там 2 курса

Dmitrii
04.12.2016
16:01:38
Хм, я же правильно понимаю, что если вызвать Handler.postMessage() из моего кастомного треда, то в Handler.handleMessage(Message msg) я буду работать в потоке UI?

Максим
04.12.2016
16:01:50
Материалы по теме: Firebase - java-help.ru/articles-firebase Теги: #firebase, #link

Alexey
04.12.2016
16:08:50
@korotovskii в том потоке, которому принадлежит этот Handler

Dmitrii
04.12.2016
16:13:17
@korotovskii в том потоке, которому принадлежит этот Handler
Странно. Я создал Handler в activity как final поле, создаю animator в UI потоке и швыряю его в очередь, которую у меня палит отдельный тред. Отдельный тред потом получает объект ViewPropertyAnimatorCompat который был создан в UI потоке, и выполняет handler.obtainMessage(0, animation) а затем handler.dispatchMessage(message). Управление прилетает в Handler.handleMessage(Message msg) и когда я стартую анимацию получаю Animators may only be run on Looper threads

Alexey
04.12.2016
16:14:27
@korotovskii "Я создал Handler в activity как final поле" в каком потоке ты был, когда создавал этот Handler?

Vladislav
04.12.2016
16:17:12
Всем привет! Столкнулся с пока не разрешимой проблемой для себя. Андроид ведет себя неадекватно... Попытаюсь сформулировать проблему. В Application я определеяю тему для всего приложения, т.к. через манифест не всегд работает. setTheme(R.style.MyTheme); Далее в разных кусках проекта я достаю данные из стиля след образом: getContext().getApplicationContext().obtainStyledAttributes(R.styleable.Something) .... При этом определяя Something в attrs <declare-styleable name="Something"> ... Так вот, в чем собвтенно проблема. В одном месте это получается достать, а в другом нет. Код одинаковый и не могу раздуплить в чем моя ошибка.

Alexey
04.12.2016
16:18:15
@korotovskii впрочем, ты бы получил исключение, если бы создавал handler в треде без очереди сообщений. В каком потоке запускается анимация? точно в коллбеке Handler.handleMessage()? Да и собсно зачем ты анимации через другой тред прогоняешь так?

Google
Ilya
04.12.2016
16:19:36
Ребят кто знает чат о пк и тд

?

Dmitrii
04.12.2016
16:20:29
Это на момент создания Handler

Alexey
04.12.2016
16:20:42
@vlad_karpman а зачем ты в application контексте тему ставишь и через getApplicationContext() получаешь? Тема и всё оформление - это обычно атрибуты контекста activity, а не application

Dmitrii
04.12.2016
16:24:09
@korotovskii впрочем, ты бы получил исключение, если бы создавал handler в треде без очереди сообщений. В каком потоке запускается анимация? точно в коллбеке Handler.handleMessage()? Да и собсно зачем ты анимации через другой тред прогоняешь так?
Кстати да, сейчас заметил, что когда breakpoint ставлю в handleMessage() то у меня там почему-то не основной тред, а мой кастомный. Почему — я сегодня тут где-то около 11 писал, что у меня экран со сложной тачлогикой, там надо сохранять анимации в очередь и выполнять последовательно по трогим правилам.

В общем если суммировать все это, у меня есть куча элементов на экране, например 3 штуки, на каждом надо запускать анимацию во время он-тач события. Он-тач события могут быть разные, и если тип события сменился, то "намерение" запустить анимацию для этого он-тач события надо поставить в очередь даже если анимации из предыдущего еще не завершились, но запускать надо только тогда, когда все анимации закончат свою работу (на всех элементах)

Ilya
04.12.2016
16:25:18
Спасибо

Dmitrii
04.12.2016
16:25:45
Мне еще советовали пойти путем ViewGroup, но вариант с потоком, который разгребает очередь тасков на анимации мне лично показался пока понятнее, несмотря на то, что он может и не такой уж и прямой.

Alexey
04.12.2016
16:26:12
@korotovskii если у тебя этот поток живет примерно столько же, сколько и activity, то можно добавить очередь сообщений к своему потоку. См. HandlerThread.

Dmitrii
04.12.2016
16:26:34
Да, именно столько же.

Создан имеено чтобы грести очеедь событий на запуск анимаций и ставить локи.

Alexey
04.12.2016
16:30:12
@korotovskii странно, что handleMessage() выполняется в твоем же потоке, не должен, по идее, там же вообще очереди нет. Проследи по стектрейсу, как ты в этот handleMessage() попадаешь

Dmitrii
04.12.2016
16:31:02
Может я как то не так сообщение посылаю?

А во, да. Надо sendMessage() перепутал я.

Alexey
04.12.2016
16:33:23
@korotovskii sendMessage(), либо Message.sendToTarget()

Dmitrii
04.12.2016
16:38:44
@illarionov а что лучше, держать свой тред или использовать HandlerThread?

Страница 623 из 3205