@xamarin_russia

Страница 540 из 619
Андрей Родионович
29.08.2018
12:31:06
Листвью не скролится, пока мы не проскролим его к топу

ага, а как заставить его вырубить скролл при желании?

Ну тобишь пока мы не проскролим к топу листвью, его нельзя скролить

Но можно нажимать на видимое

Google
Boris
29.08.2018
12:32:45
Сейчас... Придумаем

Выравниванием по вертикали ?

Андрей Родионович
29.08.2018
12:33:14
что?

Это как?

Boris
29.08.2018
12:33:23
Пока нужно быть "тягабельным" - выравниваешься к верху

Типо VerticalOptions=Start

А потом меняешь на Stretch

Андрей Родионович
29.08.2018
12:34:13
Не пойму, как verticaloptions вырубит скролл

Boris
29.08.2018
12:35:30
Очень просто. При выравнивании по верхнему краю у контейнера не будет ограничения, так?

Андрей Родионович
29.08.2018
12:36:43
Я чет вообще не могу вникнуть ?

Тобишь в контейнере картинка и листвью

Karim
29.08.2018
12:37:07
типа в случае его скролла ставим параметр LayoutOptions.Start, во втором случае LayouOptions.StartAndExpand

?

Google
Андрей Родионович
29.08.2018
12:37:11
На листвью задали вертикалопшнс

Boris
29.08.2018
12:37:54
Да. Поэтому размер ListView будет условно бесконечным

И ты его тащишь вверх при изменении дельты

vladimir
29.08.2018
12:38:28
Подскажите, как бы вы реализовывали это на формс Плиз
к сожалению, так в формс нормально не сделать, как минимум я не знаю как, но знаю, как стандартными средствами, хотя там тоже рутина будет - много условий и состояний проверять

Boris
29.08.2018
12:38:36
Когда "дотащил", выставляешь Stretch. Его размер становится как у экрана

И включается скролл

Наверняка есть подводные камни, но в целом что-то такое

Karim
29.08.2018
12:39:13
лайфхак: 10 Линусов из десяти

Андрей Родионович
29.08.2018
12:40:11
И ты его тащишь вверх при изменении дельты
Но в листвью же энивей будут итемы, почему он не будет скролится тогда, не пойму?

vladimir
29.08.2018
12:40:22
Подскажите, как бы вы реализовывали это на формс Плиз
ну или всё это чудо рисовать внутри какой-нибудь Skia, но тоже не менее запарно будет

Karim
29.08.2018
12:40:53
Но в листвью же энивей будут итемы, почему он не будет скролится тогда, не пойму?
потому что listview не скролится, если высота элементов в сумме меньше высоты самого listview

Андрей Родионович
29.08.2018
12:41:01
ну или всё это чудо рисовать внутри какой-нибудь Skia, но тоже не менее запарно будет
В скиа как вариант конечно, но это что-то типо собственного листвью описать)

Boris
29.08.2018
12:41:28
Вообще я кстати задумался... Может оверскроллинг и ломает мою затею

Karim
29.08.2018
12:41:42
он только на iOS

Андрей Родионович
29.08.2018
12:41:46
Да и скиа это не контейнер, а мне нужны итемы по типу энтри и тд

Karim
29.08.2018
12:42:15
его наверно можно отрубить в рендере

Андрей Родионович
29.08.2018
12:42:28
Boris
29.08.2018
12:43:01
Ну... В самом плохом случае - резко перецеплять из какой-нить панели в скроллвьювер

Может быть не пловно

vladimir
29.08.2018
12:43:24
Да и скиа это не контейнер, а мне нужны итемы по типу энтри и тд
формс тут не подойдёт, к сожалению можно же в формс вставлять нативные вьюхи - так и сделайте а внутри этой вью сделайте уже список со всеми свистелками и перделками но тут нужно уже знать, как делать нативный UI

Google
Андрей Родионович
29.08.2018
12:43:26
Вообще я кстати задумался... Может оверскроллинг и ломает мою затею
Овер скролинг, это вот этот эффект когда тянешь вниз, а внизу ничего нет, но ты все равно можешь тянуть?))

Karim
29.08.2018
12:43:37
еще есть вопрос по recycle элементов. если контейнер будет неограниченной высоты, то сразу все элементы будут рисоваться, а это может быть долго

vladimir
29.08.2018
12:44:28
Boris
29.08.2018
12:44:32
Ты же гений, ты в курсе?

Делаем настоящий листью невидимым, а поверх него стэк элементов на 10

Стэк тягабельный, листвью - листабельный

Переключаем им видимость при соответствующих событиях

If you can't do that - fake that

Или как-то так

Андрей Родионович
29.08.2018
12:46:24
Делаем настоящий листью невидимым, а поверх него стэк элементов на 10
Почему бы тогда просто не присобачить гвоздями поверх листвью не с бесконечной высотой прозрачный элемент, а когда дотащим вверх ставить этому элементу inputtransparent?

ай блин

Нажать то незя

Karim
29.08.2018
12:46:58
легче имхо отрубить скролл у listview и по тому же самому ивенту включать его

Karim
29.08.2018
12:47:19
да.

Андрей Родионович
29.08.2018
12:47:44
хм хм хм

Если так можно, то это всё решит конечно)

Google
Андрей Родионович
29.08.2018
12:48:25
в нативе ж есть свойства аля isScrollable?

Karim
29.08.2018
12:48:27
хотя все это будет работать из рук вон плохо. одним свайпом нельзя будет и доскролить до полноразмерного listview и начать его скроллить

Андрей Родионович
29.08.2018
12:48:56
Сперва скролл вырублен

Потом врубили

Как до верху дотянули

Karim
29.08.2018
12:49:22
в гугловских вроде работает одним свайпом

Андрей Родионович
29.08.2018
12:49:24
Типо ивент скролла не будет ловится?

Admin
ERROR: S client not available

Karim
29.08.2018
12:49:32
надо тестить

Андрей Родионович
29.08.2018
12:49:43
Ладно, спасибо)

Надеюсь на чудо

vladimir
29.08.2018
12:52:06
Ну а в нативе разве не так реализовано?
в нативе на ведре CoordinatorLayout - работает сразу из коробки в iOS код надо дополнительный код во ViewSource написать - запарненько

Андрей Родионович
29.08.2018
12:53:03
Ну точнее как оно работает

Почему работает, или почему не работает?)

vladimir
29.08.2018
12:53:46
некоторые топовые приложения (даже одна фишка в самой системе iOS) не запариваются со следованием за пальцем, а просто как выше описали, тупо на свайпы и состояния реагируют, а смещаются на нужное расстояние сами

я к тому, что насколько вы хотите запариться, чтобы реализовать эту штуку?

А что именно во viewsource нужно дописать
там перегрузить один или пару методов, где оно будет решать как закончить анимацию прокрутки - и там вычислять, до какого момента допрокрутить

Андрей Родионович
29.08.2018
12:55:37
Наверное я не хочу парится, мне легче дизайн переклеить, чем писать нативный код для формс? Мб даст бог уговорю их дать мне время на изучение classic

Google
Андрей Родионович
29.08.2018
12:56:21
Потому что откровенно говоря нормальный интерфейс на формс дается сложнее чем в нативе

Но это не точно)

vladimir
29.08.2018
12:57:13
это-то понятно, его и нужно использовать, где простой интерфейс

конкретная задача - сложный интерфейс

Андрей Родионович
29.08.2018
12:58:54
Да, это явно сложный интерфейс Я подумал что просто разделю нормально функционал так, чтобы не пришлось делать листвью вовсе Обычного контейнера хватит

vladimir
29.08.2018
12:59:59
я бы предложил как текущий вариант добавить что-то типо кнопки со стрелкой вниз и вверх соответственно, по нажатию на которую ListView будет открываться и закрываться, а под ним уже рисовать всё остальное - это как минимум как максимум, тоже самое, только реагируя на свайп, но не следя за точным положением, просто свайп - прокрутить на нужное место

Андрей Родионович
29.08.2018
13:00:00
И будет два состояния Просмотр этой картинки(тогда она большая) И работа с функционалом(картинка маленькая а контейнер вырос)

vladimir
29.08.2018
13:00:46
а ну окей, я не знаю, какой у вас там интерфейс и нужен ли ListView

Андрей Родионович
29.08.2018
13:01:17
Ну вот по кнопке закрывать и открывать тоже как вариант неплохой конечно

Но хочется вот этих всех свайпов и прочего)

Быстрее для пальцев будет

Kirill
29.08.2018
13:02:54
Подскажите, как бы вы реализовывали это на формс Плиз
2 слоя. Внизу вьюха с картой, которая отслеживает перемещение скроллвью и смещается по отрицательному TranslateY, выше ScrollView прозрачный, у которго сверху отступ, что бы было видно нижний слой.. Хотя не, это если не надо с нижним слоем взаимодействовать.. а если надо, то наверно так же, но без скроллвью, а вместо этого свой лейаут и отслеживать жесты.

vladimir
29.08.2018
13:02:56
если у вас не список, то мой совет про перегрузку методов во ViewSource не имеет смысла там надо будет вручную с UIPanGestureRecognizer работать, и вычислять позиции

Kirill
29.08.2018
13:07:16
Ну да свой лэйаут, свой листвью) Простой выход из ситуации однако)
ну листвью свой не нужен. Как понимаю тут фиксированное количество элементов, ибочный стек) А свой лейаут нужен для корректного позиционирования и отрисовки вьюхи даже за пределами экрана, что бы через TranslateY можно было двигать.

Kirill
29.08.2018
13:08:44
На самом деле в формс лейауты свои очень просто писать

Андрей Родионович
29.08.2018
13:09:32
Я вот делал свой CarouselView через relativelayout и очень даже норм работает)

Страница 540 из 619