169 похожих чатов

Всем привет, подскажите как можно в ресайклер с разметкой StaggeredGridLayoutManager

увеличить ширину элемента? Чтобы на чёрном фоне был зелёный цвет. Я меняла ширину в onCreateViewHolder и в onBindViewHolder, но, похоже, что-то где-то упустила

56 ответов

59 просмотров

Java Android?

Юлия- Автор вопроса

Я могу помочь, если вы расскажете мне более подробно, что вы хотите сделать

İsmail Alpaydın
Я могу помочь, если вы расскажете мне более подроб...

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

Guleguli
Получить точное время которое в любом месте совпад...

Если забанили, то вот: public long getTime () Returns the Unix epoch time of this location fix, in milliseconds since the start of the Unix epoch (00:00:00 January 1, 1970 UTC). There is no guarantee that different locations have times set from the same clock. Locations derived from the LocationManager#GPS_PROVIDER are guaranteed to have their time originate from the clock in use by the satellite constellation that provided the fix. Locations derived from other providers may use any clock to set their time, though it is most common to use the device's Unix epoch time system clock (which may be incorrect). Note that the device's Unix epoch time system clock is not monotonic; it can jump forwards or backwards unpredictably and may be changed at any time by the user, so this time should not be used to order or compare locations. Prefer getElapsedRealtimeNanos() for that purpose, as the elapsed realtime clock is guaranteed to be monotonic. On the other hand, this method may be useful for presenting a human-readable time to the user, or as a heuristic for comparing location fixes across reboot or across devices. All locations generated by the LocationManager are guaranteed to have this time set, however remember that the device's system clock may have changed since the location was generated.

Leonid B.
Если забанили, то вот: public long getTime () Re...

Оберните код в теги: 3 символа ` до и после кода (в случае одиночной конструкции достаточно 1 ` с обеих сторон). Спасибо!

Guleguli
Получить точное время которое в любом месте совпад...

Да ептить тебя за голову... Получил лат лон --> получил текущее время устройства --> Профит

Юлия- Автор вопроса
İsmail Alpaydın
Я могу помочь, если вы расскажете мне более подроб...

хочу выставить ширину элементов, которые не на всю ширину экрана. Пыталась сделать это в процентном соотношении 40/60. Узкие элементы(желтый фон) получается сократить в ширине (но если они располагаются справа на экране, то уже нет ), то широкие элементы уже не выходит. Нагуглила эту статью на стаковерфлоу, применила решение, но оно не сработало

Юлия- Автор вопроса
Leonid B.
Все строки одинаковой высоты?

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

Юлия
да, но я думаю, если получится изменить ширину, то...

Если у вас всегда 3 элемента на строку, то возьмите для строки обычный ConstraintLayout из 3х элементов, и ставьте им % ширины в onBind как хотите. И вместо Staggered используйте Linear. Зачем здесь Staggered?

Желтый, зеленый, черный - это одна строка в списке?

Юлия- Автор вопроса

нет, это три разных элемента

Юлия
нет, это три разных элемента

Да хоть 100500 разных элементов. Они всегда расположены в 1 ряд одной и той же высоты?

Юлия- Автор вопроса

Я предполагаю, что вы хотите, чтобы все элементы имели одинаковую ширину. android:layout_weight="1"

Юлия
черный - это фрагмент

Такой мелкий? Но зачем?

Юлия- Автор вопроса
Юлия- Автор вопроса
Leonid B.
Такой мелкий? Но зачем?

это фон фрагмента. я желтый элемент сделала уже, а зеленый шире. По факту получилось так, что желтый уже стал, а зеленый нет

Юлия
как раз наоборот, я хочу разную ширину

- Это список - Высота строк списка одинаковая - В разных строках у элементов внутри строки может быть разная ширина Так?

Юлия
да, верно

Вертикальный RecyclerView + LinearLayoutManager + в адаптере getViewType для холдеров 2 типов + ширину выставлять в холдере в onBindViewHodler

Юлия- Автор вопроса
Leonid B.
Вертикальный RecyclerView + LinearLayoutManager + ...

не могу понять почему LinearLayoutManager? И зачем getViewType, если ширину выставлять в холдере onBindViewHodler? getViewType при этом сценарии же тогда не используется

Юлия
не могу понять почему LinearLayoutManager? И зачем...

Зачем Staggered, если в список состоит из прямоугольников от левого края экрана до правого?

Юлия- Автор вопроса
Leonid B.
Зачем Staggered, если в список состоит из прямоуго...

Но ведь я тогда не смогу расположить жёлтые и красные элементы так, как нарисовано тут https://t.me/android_ru/1426423, они будут идти друг под другом

Юлия
как раз наоборот, я хочу разную ширину

А если представить, что оранжевый и зеленый находятся внутри общего прямоугольного контейнера? :)

Юлия- Автор вопроса
Leonid B.
А если представить, что оранжевый и зеленый находя...

А как я потом буду переходить внутрь элемента?

Юлия- Автор вопроса
Leonid B.
Что значит переходить внутрь?

Навигация с одного экрана на другой

Юлия- Автор вопроса
Юлия
Да

Ну так прокинь внутрь адаптера интерфейс

Юлия
Навигация с одного экрана на другой

Ну нажала куда-нибудь и обработала нажатие.

Юлия
Да

И потом уже ловишь клик по айтему

Если все эти полоски некоикабельны, лучше просто взять и нарисовать их на канвасе. Либо как дровабл, либо как вьюшка, если еще клики надо обрабатывать. Это будет работать гораздо быстрее чем добавление кучи вьюшек

Юлия- Автор вопроса
^^^^^^^^^^^^^^^^^^^^^^^^ ___
И потом уже ловишь клик по айтему

Например, наполнение будут иконки - сделать 2 батон имадж в одном элементе и по его клику передавать колбэк, типа правая иконка была нажата или левая?

Юлия- Автор вопроса
Юлия- Автор вопроса
M
Если все эти полоски некоикабельны, лучше просто в...

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

Юлия
Например, наполнение будут иконки - сделать 2 бато...

Ну если нужно отличать правый или левый, тогда интерфейс с двумя методами : левый и правый

Юлия
Да и в дравбл не рисовать же весь список, который ...

А как эта штука в принципе работать должна?

Обычная задача. В адаптер передаются листенеры. Эти листенеры вызываются при кликах по списку. В листенерах делаешь что хочешь.

Юлия- Автор вопроса

Подскажите, где можно просмотре примеры такой реализации или что гуглить?

Юлия- Автор вопроса
Leonid B.
Обычная задача. В адаптер передаются листенеры. Эт...

Это я делала, но необычной для меня стала реализация элементов: один на всю ширину, второй и третий с разной шириной, а затем у четвёртого и пятого местами поменять ширину

Юлия
Подскажите, где можно просмотре примеры такой реал...

Но только ты уже в адаптере точно должна понимать какой левый и какой правый)) а для этого нужно понять какой у тебя будет layout Manager...

Юлия- Автор вопроса
Юлия
Я по позиции элемента это сделала

Нууу такой... Делай через linear layout. И тут уже выбор делай как я с разными viewType или как предлагает @inthecornersc с одним, но прятать лишнее

Юлия- Автор вопроса
^^^^^^^^^^^^^^^^^^^^^^^^ ___
Нууу такой... Делай через linear layout. И тут уже...

А что подразумевается под лишним? Я правильно поняла, что в вашей реализации получится только сделать вместо двух элементов один и с кнопками? Да и как наполнять такой элемент? Во фрагменте перебирать список по позиции и если совпадает, то 2 элемента сразу в адаптер?

Юлия- Автор вопроса
Юлия
А что подразумевается под лишним? Я правильно поня...

Хотя последнее про фрагмент, это я уже что-то фигню пишу

Юлия
А что подразумевается под лишним? Я правильно поня...

Ну это делает адаптер. Допустим тебе приходит тупо список. И тебе каждый n нужно делать 2 вряд. А в адаптере ты уже все знаешь. И зависимости ситуации ты рисуешь тот или иной viewHolder

Юлия
А что подразумевается под лишним? Я правильно поня...

А у каждого viewHolder своя xml разметка. Единственная "сложность" в каждой разметке все выставить как тебе надобно

Юлия
А что подразумевается под лишним? Я правильно поня...

И + в этой реализации можно в один RV пихать любые элементы с любой сложностью разметки

Юлия- Автор вопроса

Похожие вопросы

Обсуждают сегодня

а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Всем привет! Подскажите. Я написал приложение на Delphi 10.2 Tokyo под Windows 10. И передо мной стал вопрос о том чтобы сделать это приложение кроссплатформенным (под Linux и...
Дмитрий Завгородний
24
Привет всем. Подскажите где можно посмотреть, какая версия электрон, поддерживает версии windows? Некий changelog. Мне бы желательно, поддержку 7,8,10... latest, как понимаю и...
Anonym Squad
21
Портфолио: Зовут меня Александр, мне 36 лет. Город Пушкино. Общий рабочий стаж: ~14 лет Уровень квалификации: Senior Full-stack developer Где прочесть мой код? https://github....
Magic
10
Не ну фпц - это уже просто троллинг какой-то. Элементарный код нельзя собрать. ЧЯДНТ? program Project1; {$mode delphi} uses SysUtils, Classes, Generics.Collections; var...
Peter
4
а где есть mysql cloud кроме яндекс-клауд?
Oleg Nosov
13
Есть ли смысл устраиваться на 1с ? Даст это плюс в дальнейшем трудоустройстве на php? Просто у меня в городе вакансий на пхп нету. Или лучше удаленно искать. Опыта работы нету...
Azamat
13
hi im a cs student. i need some advice from people who have enough experience in Embedded Software. I need to know whether this profession is suitable for me. I have watched s...
Sahand 🏔️
8
А кто-нибудь запихивал сборку перловых модулей/образов с perl приложениями в окружения без интернета (в специализированном CI/CD)? У меня сейчас есть ряд cpanfile, которые н...
Andrey Smirnov / 𝓪𝓵𝓵𝓽𝓮𝓻 /
14
Кстати а покупал кто-нибудь ЭЦП для подписи кода? А то у меня на некоторых компах и ОС иногда SmartScreen винды программу за вирус принимал. Если купить такую ЭЦП и подписыват...
Дмитрий Завгородний
15
Карта сайта