@android_ru

Страница 640 из 3205
Глеб
07.12.2016
13:19:51
если у тебя при отображении фото появляется нужда в геоданных - тут явно что-то не так

balolam
07.12.2016
13:20:00
тем не менее, тут я бы использовал "?"

Глеб
07.12.2016
13:20:06
и попахивает сваливанием всего в одну кучу

и если эту кучу разгрести у тебя опять всё возвращается к методам, которые принимают только не-null значения, или вовсе не вызываются

Google
balolam
07.12.2016
13:21:41
Вот смотри, нам сейчас сложно тебе донести свою мысль, а все потому, что она глобальная, это общая концепция, которой стоит придерживатся при проектировании всех компонентов, но в отдельно взятом месте ты вот так ее не вкрутишь, особенно с учетом такой неопределенности с Null во всем приложении

Dmitriy
07.12.2016
13:21:59
Так вот еще для обсуждения) У меня есть модель например мне ее надо инициализировать пустую и по мере поступления заполнять данными. Получается мне все поля надо делать не нулловыми и как то их инициализировать

Глеб
07.12.2016
13:22:27
нет, не получается. Инициализируй null-ами

Dmitriy
07.12.2016
13:22:27
Я понял про let и как с ним работать спасибо

Глеб
07.12.2016
13:22:45
но ты ведь не по одному атрибуту будешь наполнять

Dmitriy
07.12.2016
13:22:49
ну тогда везде все делать через let

По 1

Глеб
07.12.2016
13:23:08
можно пример?

лучше кодом

Dmitriy
07.12.2016
13:23:15
нажал кнопку получил значение записал, нажал другую получил записал

не нажимал вторую так и осталось там пусто

Глеб
07.12.2016
13:23:53
и это в модели?

Dmitriy
07.12.2016
13:24:08
Объект в котором 2 поля : 1строка имя объект кот

Google
Dmitriy
07.12.2016
13:24:21
нажали на кнопку с именем записали в первое поле имя

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

Тогда в основном объекте это поле будет нулловым и раз так то его везде писать через let

Да обезопасит от падения при пустоте но читаемость и it хелл в подарок

Глеб
07.12.2016
13:25:44
меняй структуру данных

у тебя получился список покупок

Max
07.12.2016
13:30:02
Как recyclerview принудительно заставить отрисовать все эелементы? Чтобы он не занимался этим во время листания списка

Mikhail
07.12.2016
13:30:50
Но это же противоречит концепции

Глеб
07.12.2016
13:30:51
эм... а смысл?

Или имеется ввиду прогнать inflate всех viewType?

Max
07.12.2016
13:31:16
Количество элементов фиксировано и не изменится. Смысл в кастомном LayoutManager

то есть при открытии активити, нужно чтобы уже были отрисованы все элементы recyclerview. Вот чего я пытаюсь добиться.

Глеб
07.12.2016
13:32:14
Ну если у тебя свой LayoutManager, то им и отрисуй

ведь именно он решает что и когда рисовать

Max
07.12.2016
13:34:40
ведь именно он решает что и когда рисовать
Сейчас будет совсем ламерский вопрос - в какой части? Название метода, переменной, что угодно, что поможет найти зацепку в документации. LayoutManager не мой, я подгоняю его под свои нужды

Глеб
07.12.2016
13:35:35
ухх...

https://habrahabr.ru/company/eastbanctech/blog/267497/

вот тут в деталях

Max
07.12.2016
13:36:58
Vusal
07.12.2016
13:45:43
Подскажите пожалуйста, почему на первом телефоне не так загружается приложение, как на втором приложение на opengl es 2 + пару функций из es 3, glsl version 300 es

Google
Vusal
07.12.2016
13:48:04
второй скрин - meizu m3s , android 5.1 ситуация как на первом скрине была на nexus5 и samsung galaxy tab A оба на android 6.0.1

Глеб
07.12.2016
13:50:20
Боюсь спецов по OpenGL по пальцам пересчитать можно

Vusal
07.12.2016
13:51:46
А вообще имеет ли смысл выкладывать в маркет что нибудь написанное на opengl es, а не с помощью фреймворка, например libgdx

Nikita
07.12.2016
13:52:38
Вай нот

Vusal
07.12.2016
13:54:41
ну вот в плане поддержки устройствами

Mikhail
07.12.2016
13:55:28
@thedragonspb Возможно по твоему вопросу надо узнать в чятике по NDK

https://telegram.me/ndk_ru

Nikita
07.12.2016
13:55:55
@ndk_ru

Mikhail
07.12.2016
13:56:01
Ну или так

Vusal
07.12.2016
13:56:01
Спасибо, сейчас там спрошу

Kirill
07.12.2016
13:59:59
Как recyclerview принудительно заставить отрисовать все эелементы? Чтобы он не занимался этим во время листания списка
было у меня такое в одной кастомной реализации GridLayoutManager.. при запуске приложение дико тормозило пару минут.. (правда там было несколько сотен элементов, из которых на экране одновременно было не больше 10)

Boris
07.12.2016
14:02:18
Ребят посоветуйте грамотный сайт для начинающих, и канал на ютубе. С каналами вообще беда. На английском хорошие есть, но на русском не найти.

Dmitriy
07.12.2016
14:03:14
у тебя получился список покупок
так я и не смог выстроить с let тоже самое что и с !!. В конечном итоге все равно пишет что ожидает String а не String?

Глеб
07.12.2016
14:03:43
такая штука не правится локально

Boris
07.12.2016
14:04:04
Спасибо

Dmitriy
07.12.2016
14:04:53
надо дальше идти по вызовам и исправлять
тогда снова не понял)))))))))) вы говорили что let по идеи замена проверки на null т.е. если будет null то не выполнится

Или я не все понял)

Google
Глеб
07.12.2016
14:05:10
ты не всё понял

let превращает "может быть null" в "если не нулл - выполни блок, иначе - хай с ним"

Max
07.12.2016
14:06:45
Или я не все понял)
Ты не одинок, я вот тоже никак не понимаю эту тему )

Dmitriy
07.12.2016
14:06:47
Ааа вон оно как а если сам объект может быть нул но в нем есть параметр который содержит еще парам и в нем так же и так далее и любой может быть нул но добраться надо до последнего0

то надо гарисовать УЖАС из let?

Ты не одинок, я вот тоже никак не понимаю эту тему )
На котлинланг в разделе нулл сафти про это нет ни строчки)

Глеб
07.12.2016
14:08:32
Это не вопрос языка

Ты точно также можешь на яве как следует задуматься и сделать так, чтобы null'ов не было

Quantum Harmonizer
07.12.2016
14:09:12
не let, а ?.let

Глеб
07.12.2016
14:09:19
kotlin только помогает контролировать это

Viktor
07.12.2016
14:09:20
https://kotlinlang.org/docs/reference/null-safety.html#safe-calls

Dmitriy
07.12.2016
14:09:53
https://kotlinlang.org/docs/reference/null-safety.html#safe-calls
Точно вижу в одном месте)

не let, а ?.let
про это то понятно

Глеб
07.12.2016
14:10:43
не всё так однозначно :) .let без ? тоже валидно

bla.bla.bla.important.let{ it == important }

как-то так

чтобы вызвать it.one(); it.two(); it.three() без bla.bla.bla

Dmitriy
07.12.2016
14:13:56
Короче понятно) надо учить всю сахарность языка) но за месяц я мало познал)

Глеб
07.12.2016
14:15:04
не совсем так

вообще не сильно понятно зачем тебе понадобился котлин с таким подходом

Google
Dmitriy
07.12.2016
14:16:04
Эххх еще бы время на это выделить) а то получается все только в процессе разработки(

не совсем так
Хм... голова взорвалась)

Глеб
07.12.2016
14:16:24
без понимания что делать с null-safety у котлина всего пара плюсов - лямбды и extension-методы

так что сначала надо было прийти к пониманию что делать с явой, а потом уже бежать на котлин

Глеб
07.12.2016
14:17:39
просто вся эта сахарность становится очевидной, если понимать откуда ноги растут

Artem
07.12.2016
14:18:56
https://github.com/TinkoffCreditSystems/decoro
я слоупок. а как заставить эту либо работать с inputtype=number?

Глеб
07.12.2016
14:19:26
.let - extension метод. public inline fun <T, R> T.let(block: (T) -> R): R = block(this)

Sergey
07.12.2016
14:19:37
Гайз! Кто юзает стехо+реалм, гляньте как у вас подключена либа stetho_realm У меня AS ругается : Error:(36, 13) Failed to resolve: com.uphyca:stetho_realm:2.0.0 Раньше её не юзал, а щас оч. надо поля в БД посмотреть.

Глеб
07.12.2016
14:19:52
? - замена if(this != null) {...}

соединяешь вместе - получаешь профит

Denis
07.12.2016
14:22:15
;D

Max
07.12.2016
14:24:33
сделай ему layout_height='wrap_content' и засунь в scrollview ?
Мсье знает толк в пикантных развлечениях

Dmitriy
07.12.2016
14:25:59
? - замена if(this != null) {...}
Спасибо за подробное описание. Буду пытаться привести к нормальному виду)

Но проблему с flatmap для observable так и не раскопал)

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