Azek
Всем привет! Такой вопрос есть: как реализовать айтем в списке который при нажатии на него отображает дополнительную информацию? Т.е. айтем при нажатии на него должен как бы раскрываться.
Alexander
OnePlus ещё 7%
Значит проблема в коде, а не устройстве . Просишь то чего нету
Artur
Значит проблема в коде, а не устройстве . Просишь то чего нету
Обычный AppCompatTextView и вложен в RelativeLayout, тут явно какае та особенность ZTE
Anonymous
Всем привет, как можно подключить голосовую команду к приложению?
Vadim
Кто нибудь мигрировал с Beta на Firebase App Distribution ? Есть отзывы? Пока столкнулся с проблемой, что у нас все тестовые девайсы привязанные к одному эмайлу, и не возможно принять инвайт на несколько девайсов
Vadim
ладно, фиг с инвайтом, апк App Distribution переслал на другие девайсы, но теперь билд не приходит, может кто знает как решить? Если один эмайл и 1 девайс то всё нормально работает
Mike
А как это на Java реализовать
выучить джаву и реализовать
Mh
JSONObject errorBody = new JSONObject(json); JSONArray errorsArray = errorBody.getJSONArray("errors"); и т.д.
Mh
выучить джаву и реализовать
может он котлин не знает)
Mike
может он котлин не знает)
так не обязательно. Главное смысл кода понять
Mh
+
суть в том, что у тебя есть методы getJSONObject для объекта JSON, getJSONArray для массива и getString и подобные ему для строки и других примитивных типов )
Kostya
кто знает хорошее SDK для видеостриминга-ремоут ассистанса?
Anton
Кто-нибудь вкурсе поддерживает ли Gmail html теги в боди сообщения?
Aleksandr
Всем привет. Изучаю пример от Google и использованием архитектурных компонентов. https://github.com/android/architecture-components-samples/tree/master/GithubBrowserSample Интересует вопрос по Dagger 2 в контексте этого приложения. Там пример кода, который билдит фрагменты: @Module abstract class FragmentBuildersModule { @ContributesAndroidInjector abstract fun contributeRepoFragment(): RepoFragment @ContributesAndroidInjector abstract fun contributeUserFragment(): UserFragment @ContributesAndroidInjector abstract fun contributeSearchFragment(): SearchFragment } В свою очередь, данный модуль является частью другого модуля: @Module abstract class MainActivityModule { @ContributesAndroidInjector(modules = [FragmentBuildersModule::class]) abstract fun contributeMainActivity(): MainActivity } Вопрос заключается в следующем. Если, например, я захочу сделать: @Module abstract class FragmentBuildersModule { @ContributesAndroidInjector(modules = [RepoModule::class]) abstract fun contributeRepoFragment(): RepoFragment @ContributesAndroidInjector abstract fun contributeUserFragment(): UserFragment @ContributesAndroidInjector abstract fun contributeSearchFragment(): SearchFragment } то как можно сделать так, чтобы в RepoModule был доступен instance MainActivity?
George
JSONObject errorBody = new JSONObject(json); JSONArray errorsArray = errorBody.getJSONArray("errors"); и т.д.
У меня есть объект JSONObject, я сделал как вы написали , и у меня ничего не вывелось в консоль
Изам
Всем привет, не знаете случайно подобный pinView
George
код в студию
listItems = new ArrayList<>(); String URL = "https://test.manana.life/v1/search.getList"; RequestQueue requestQueue = Volley.newRequestQueue(this); final JsonObjectRequest objectRequest = new JsonObjectRequest( Request.Method.GET, URL, null, new Response.Listener<JSONObject>() { @Override public void onResponse(JSONObject response) { Log.e("response",response.toString()); try { JSONArray arr = response.getJSONArray("items"); } catch (JSONException e) { e.printStackTrace(); } } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { System.out.println(error); Log.e("response error", error.toString()); } } ); requestQueue.add(objectRequest); }
Изам
Всем привет, не знаете случайно подобный pinView
а то я нашел, только с неподходящими мне линиями
Anonymous
Всем привет, не знаете случайно подобный pinView
https://github.com/mukeshsolanki/android-otpview-pinview
George
фак( вот здесь Log.e("response",response.toString()); должно вывестись? ну если пусто, значит, не пришло
тут то оно как раз таки выводит мне в строковом виде весь массив, а я хчу его распарсить и вывести дальше в recycleView
Изам
https://github.com/mukeshsolanki/android-otpview-pinview
проблема в том что линии расположены снизу, а кастомизировать их не получается
George
покажи массив и как ты его распарсил
Value {"items":[{"id":1582,"company_title":"Агенство контакт","position_title":"Инженер","address":"Москва, Петровско-Разумовский проезд, 22 к6","business_title":"Клиентский сервис","site":null,"date":"2019-10-18","start_time":"09:00","end_time":"20:00","duration":"660","salary":"40400.00","rating":"4.5","reviews":1,"is_user_favorite":false,"photo":[],"avatar":"https:\/\/test.manana.life\/file\/5ba2bd3b1d8b8abd80ca9098a8b6005759aa968edbdb75133892df13d8ff5e1a.jpg","type":1,"match_status_id":null},{"id":1611,"company_title":"Буртех","position_title":"Помощник бухгалтера","address":"Москва, Азовская улица, 6 к3","business_title":"Медицина","site":null,"date":"2019-10-18","start_time":"09:00","end_time":"22:00","duration":"780","salary":"43000.00","rating":"3.5","reviews":10,"is_user_favorite":false,"photo":["https:\/\/test.manana.life\/file\/7859235f8dbaae0a5899c4ebb56dc17d11ad535f600dd07ddda57045ea20ccd2.jpg","https:\/\/test.manana.life\/file\/d0a1236fb396f815390858217b404b38276586a7e41d7d12512c3ff8098332f1.jpg"],"avatar":"https:\/\/test.manana.life\/file\/ca095e380e0a3f9e890878e7c8b85ff32d0955b0fecb0ff2038fd40d75ab11e6.jpg","type":2,"match_status_id":null},{"id":1621,"company_title":"Агенство контакт","position_title":"Кладовщик","address":"Москва, 1-я Хуторская улица, 4 к1","business_title":"Клиентский сервис","site":null,"date":"2019-10-18","start_time":"09:00","end_time":"16:00","duration":"420","salary":"33800.00","rating":"4.5","reviews":2,"is_user_favorite":false,"photo":["https:\/\/test.manana.life\/file\/2152dd5133d10894f9f3edd6ab51162db3f48ee5e8d68b4e88ab5186dfb7442f.jpg"],"avatar":"https:\/\/test.manana.life\/file\/5ba2bd3b1d8b8abd80ca9098a8b6005759aa968edbdb75133892df13d8ff5e1a.jpg","type":1,"match_status_id":null},{"id":1626,"company_title":"Агенство контакт","position_title":"Уборщик","address":"Москва, Новодевичий проезд, 1 с11","business_title":"Клиентский сервис","site":null,"date":"2019-10-18","start_time":"09:00","end_time":"18:00","duration":"540","salary":"11550.00","rating":"4.5","reviews":3,"is_user_favorite":false,"photo":["https:\/\/test.manana.life\/file\/b585090462a956a8d5791f1b490f31971e79a60997f95c3573e7f1fb1a873cfc.jpg","https:\/\/test.manana.life\/file\/fea5a2828f276fa091440a6fa900621e8d9ea43c087d1ef75460a3ef5fe437db.jpg"],"avatar":"https:\/\/test.manana.life\/file\/5ba2bd3b1d8b8abd80ca9098a8b6005759aa968edbdb75133892df13d8ff5e1a.jpg","type":1,"match_status_id":null},{"id":1627,"company_title":"Агенство контакт","position_title":"Повар","address":"Москва, Энергетическая улица, 18","business_title":"Клиентский сервис","site":null,"date":"2019-10-18","start_time":"09:00","end_time":"18:00","duration":"540","salary":"34400.00","rating":"4.5","reviews":5,"is_user_favorite":false,"photo":["https:\/\/test.manana.life\/file\/486a487a9dbd075aad0b3fc5490d08b0c3ff737503143176a2c893765fbde662.jpg"],"avatar":"https:\/\/test.manana.life\/file\/5ba2bd3b1d8b8abd80ca9098a8b6005759aa968edbdb75133892df13d8ff5e1a.jpg","type":1,"match_status_id":null}],"count":244,"count_like":0} at response of type org.json.JSONObject cannot be converted to JSONArray вот массив который пришел, и как его распарсить по всем значениям, тоесть ключ - значение
Anonymous
серые?)
Изам
а как нужно?
они расположены посередине текста
Mh
Value {"items":[{"id":1582,"company_title":"Агенство контакт","position_title":"Инженер","address":"Москва, Петровско-Разумовский проезд, 22 к6","business_title":"Клиентский сервис","site":null,"date":"2019-10-18","start_time":"09:00","end_time":"20:00","duration":"660","salary":"40400.00","rating":"4.5","reviews":1,"is_user_favorite":false,"photo":[],"avatar":"https:\/\/test.manana.life\/file\/5ba2bd3b1d8b8abd80ca9098a8b6005759aa968edbdb75133892df13d8ff5e1a.jpg","type":1,"match_status_id":null},{"id":1611,"company_title":"Буртех","position_title":"Помощник бухгалтера","address":"Москва, Азовская улица, 6 к3","business_title":"Медицина","site":null,"date":"2019-10-18","start_time":"09:00","end_time":"22:00","duration":"780","salary":"43000.00","rating":"3.5","reviews":10,"is_user_favorite":false,"photo":["https:\/\/test.manana.life\/file\/7859235f8dbaae0a5899c4ebb56dc17d11ad535f600dd07ddda57045ea20ccd2.jpg","https:\/\/test.manana.life\/file\/d0a1236fb396f815390858217b404b38276586a7e41d7d12512c3ff8098332f1.jpg"],"avatar":"https:\/\/test.manana.life\/file\/ca095e380e0a3f9e890878e7c8b85ff32d0955b0fecb0ff2038fd40d75ab11e6.jpg","type":2,"match_status_id":null},{"id":1621,"company_title":"Агенство контакт","position_title":"Кладовщик","address":"Москва, 1-я Хуторская улица, 4 к1","business_title":"Клиентский сервис","site":null,"date":"2019-10-18","start_time":"09:00","end_time":"16:00","duration":"420","salary":"33800.00","rating":"4.5","reviews":2,"is_user_favorite":false,"photo":["https:\/\/test.manana.life\/file\/2152dd5133d10894f9f3edd6ab51162db3f48ee5e8d68b4e88ab5186dfb7442f.jpg"],"avatar":"https:\/\/test.manana.life\/file\/5ba2bd3b1d8b8abd80ca9098a8b6005759aa968edbdb75133892df13d8ff5e1a.jpg","type":1,"match_status_id":null},{"id":1626,"company_title":"Агенство контакт","position_title":"Уборщик","address":"Москва, Новодевичий проезд, 1 с11","business_title":"Клиентский сервис","site":null,"date":"2019-10-18","start_time":"09:00","end_time":"18:00","duration":"540","salary":"11550.00","rating":"4.5","reviews":3,"is_user_favorite":false,"photo":["https:\/\/test.manana.life\/file\/b585090462a956a8d5791f1b490f31971e79a60997f95c3573e7f1fb1a873cfc.jpg","https:\/\/test.manana.life\/file\/fea5a2828f276fa091440a6fa900621e8d9ea43c087d1ef75460a3ef5fe437db.jpg"],"avatar":"https:\/\/test.manana.life\/file\/5ba2bd3b1d8b8abd80ca9098a8b6005759aa968edbdb75133892df13d8ff5e1a.jpg","type":1,"match_status_id":null},{"id":1627,"company_title":"Агенство контакт","position_title":"Повар","address":"Москва, Энергетическая улица, 18","business_title":"Клиентский сервис","site":null,"date":"2019-10-18","start_time":"09:00","end_time":"18:00","duration":"540","salary":"34400.00","rating":"4.5","reviews":5,"is_user_favorite":false,"photo":["https:\/\/test.manana.life\/file\/486a487a9dbd075aad0b3fc5490d08b0c3ff737503143176a2c893765fbde662.jpg"],"avatar":"https:\/\/test.manana.life\/file\/5ba2bd3b1d8b8abd80ca9098a8b6005759aa968edbdb75133892df13d8ff5e1a.jpg","type":1,"match_status_id":null}],"count":244,"count_like":0} at response of type org.json.JSONObject cannot be converted to JSONArray вот массив который пришел, и как его распарсить по всем значениям, тоесть ключ - значение
а, я прочитал, ты неправильно делаешь) Сначала тебе надо вытащить объект response
Изам
George
JSONObject куда вытащить?
Изам
Mh
JSONObject object = response.getJSONObject("response"); JSONArray arr = object.getJSONArray("items");
Anonymous
aaaaaaaa
Anonymous
🤔плейсхолдер?
George
JSONObject object = response.getJSONObject("response"); JSONArray arr = object.getJSONArray("items");
я так же делал, как из этого arr вытаскивать данные по ключу - значению?
Mh
я так же делал, как из этого arr вытаскивать данные по ключу - значению?
сначала тебе надо достать элемент по индексу, а потом в зависимости от типа элемента продолжить доставать это все пока не дойдешь до примитивного типа
Anonymous
сделай плейсхолд))))
Изам
сделай плейсхолд))))
аааа, это типо hint что ли)))
Mh
попробую, спасибо
JSONObject object = response.getJSONObject("response"); JSONArray arr = object.getJSONArray("items"); JSONObject first = arr.getJSONObject(0); int id = first.getInt("id");
Anonymous
аааа, это типо hint что ли)))
немного вебовской херьни в голове осталось)
Изам
ну тип)
спасибо, попробую)
Anonymous
спасибо, попробую)
более логичнее придумать хз)
Mh
попробую, спасибо
так ты id первого элемента в массиве получишь, если тебе нужно все парсить, то у JSONArray есть метод length(), который позволит тебе определить размер массива, в цикле просто все доставай)
Изам
более логичнее придумать хз)
я подумывал горизонтальный  recycler пихнуть, но бл, идиотизмом попахивает))
Arsen
интересное предупреждение в транзишин анимациях))
Mike
Value {"items":[{"id":1582,"company_title":"Агенство контакт","position_title":"Инженер","address":"Москва, Петровско-Разумовский проезд, 22 к6","business_title":"Клиентский сервис","site":null,"date":"2019-10-18","start_time":"09:00","end_time":"20:00","duration":"660","salary":"40400.00","rating":"4.5","reviews":1,"is_user_favorite":false,"photo":[],"avatar":"https:\/\/test.manana.life\/file\/5ba2bd3b1d8b8abd80ca9098a8b6005759aa968edbdb75133892df13d8ff5e1a.jpg","type":1,"match_status_id":null},{"id":1611,"company_title":"Буртех","position_title":"Помощник бухгалтера","address":"Москва, Азовская улица, 6 к3","business_title":"Медицина","site":null,"date":"2019-10-18","start_time":"09:00","end_time":"22:00","duration":"780","salary":"43000.00","rating":"3.5","reviews":10,"is_user_favorite":false,"photo":["https:\/\/test.manana.life\/file\/7859235f8dbaae0a5899c4ebb56dc17d11ad535f600dd07ddda57045ea20ccd2.jpg","https:\/\/test.manana.life\/file\/d0a1236fb396f815390858217b404b38276586a7e41d7d12512c3ff8098332f1.jpg"],"avatar":"https:\/\/test.manana.life\/file\/ca095e380e0a3f9e890878e7c8b85ff32d0955b0fecb0ff2038fd40d75ab11e6.jpg","type":2,"match_status_id":null},{"id":1621,"company_title":"Агенство контакт","position_title":"Кладовщик","address":"Москва, 1-я Хуторская улица, 4 к1","business_title":"Клиентский сервис","site":null,"date":"2019-10-18","start_time":"09:00","end_time":"16:00","duration":"420","salary":"33800.00","rating":"4.5","reviews":2,"is_user_favorite":false,"photo":["https:\/\/test.manana.life\/file\/2152dd5133d10894f9f3edd6ab51162db3f48ee5e8d68b4e88ab5186dfb7442f.jpg"],"avatar":"https:\/\/test.manana.life\/file\/5ba2bd3b1d8b8abd80ca9098a8b6005759aa968edbdb75133892df13d8ff5e1a.jpg","type":1,"match_status_id":null},{"id":1626,"company_title":"Агенство контакт","position_title":"Уборщик","address":"Москва, Новодевичий проезд, 1 с11","business_title":"Клиентский сервис","site":null,"date":"2019-10-18","start_time":"09:00","end_time":"18:00","duration":"540","salary":"11550.00","rating":"4.5","reviews":3,"is_user_favorite":false,"photo":["https:\/\/test.manana.life\/file\/b585090462a956a8d5791f1b490f31971e79a60997f95c3573e7f1fb1a873cfc.jpg","https:\/\/test.manana.life\/file\/fea5a2828f276fa091440a6fa900621e8d9ea43c087d1ef75460a3ef5fe437db.jpg"],"avatar":"https:\/\/test.manana.life\/file\/5ba2bd3b1d8b8abd80ca9098a8b6005759aa968edbdb75133892df13d8ff5e1a.jpg","type":1,"match_status_id":null},{"id":1627,"company_title":"Агенство контакт","position_title":"Повар","address":"Москва, Энергетическая улица, 18","business_title":"Клиентский сервис","site":null,"date":"2019-10-18","start_time":"09:00","end_time":"18:00","duration":"540","salary":"34400.00","rating":"4.5","reviews":5,"is_user_favorite":false,"photo":["https:\/\/test.manana.life\/file\/486a487a9dbd075aad0b3fc5490d08b0c3ff737503143176a2c893765fbde662.jpg"],"avatar":"https:\/\/test.manana.life\/file\/5ba2bd3b1d8b8abd80ca9098a8b6005759aa968edbdb75133892df13d8ff5e1a.jpg","type":1,"match_status_id":null}],"count":244,"count_like":0} at response of type org.json.JSONObject cannot be converted to JSONArray вот массив который пришел, и как его распарсить по всем значениям, тоесть ключ - значение
ну распарси, и больше не скидывай в чат такие огромные куски, читать невозможно. gist.github.com
Никита 🙃
А подскажите, такой странный баг. Есть LaunchActivity. Она решает кинуть на логин или или main в onCreate, после чего дёргает finish(). Дальше открывается экран логина. Если у юзера есть двухфакторка, то поверх Login'a, после заполнения всех филдов (имеил\пароль) запускаю startActivityForResult TwoFactorActivity. Но есть такой баг. Если свернуть приложение и развернуть на моменте когда показался экран двух факторки, снова отрабатывает Launch Activity и открывает поверх LoginActivity и TwoFactorActivity третью активити - Login. В итоге получается вот такой странный баг... Активити из манифеста прилагаю <activity android:name=".flow.LaunchActivity" android:theme="@style/AppTheme.Launch"> <intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter> </activity> <activity android:name=".flow.auth.login.LoginActivity" android:configChanges="orientation" android:theme="@style/AppTheme.Auth"/> <activity android:name=".flow.auth.twoFactor.google.GoogleAuthActivity" android:configChanges="orientation" android:windowSoftInputMode="stateVisible" android:theme="@style/AppTheme.Auth" />
Илья
мб передаете в адаптер вьюпейджера не тот FragmentManager?
Никита 🙃
А подскажите, такой странный баг. Есть LaunchActivity. Она решает кинуть на логин или или main в onCreate, после чего дёргает finish(). Дальше открывается экран логина. Если у юзера есть двухфакторка, то поверх Login'a, после заполнения всех филдов (имеил\пароль) запускаю startActivityForResult TwoFactorActivity. Но есть такой баг. Если свернуть приложение и развернуть на моменте когда показался экран двух факторки, снова отрабатывает Launch Activity и открывает поверх LoginActivity и TwoFactorActivity третью активити - Login. В итоге получается вот такой странный баг... Активити из манифеста прилагаю <activity android:name=".flow.LaunchActivity" android:theme="@style/AppTheme.Launch"> <intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter> </activity> <activity android:name=".flow.auth.login.LoginActivity" android:configChanges="orientation" android:theme="@style/AppTheme.Auth"/> <activity android:name=".flow.auth.twoFactor.google.GoogleAuthActivity" android:configChanges="orientation" android:windowSoftInputMode="stateVisible" android:theme="@style/AppTheme.Auth" />
И эта херня только при первом запуске приложения. Т.е. если её закрыть (а не свернуть) и открыть заново, то всё хорошо и больше не репродьюсится
Никита 🙃
Хз, может виноват ксяоми
George
Что это значит
🇷🇺El Mariachi
https://github.com/bauerca/drag-sort-listview а что-нибудь такое же посвежее есть? (именно для listview) или DSLV до сих пор норм?
Arsen
Хз, может виноват ксяоми
флажок в преференсах?
Kirill
Что это значит
как минимум, что ты не умеешь делать скриншоты..
Kirill
Что это значит
а еще, что у тебя ошибка😀
Yakov
FragmentStateAdapter у viewPager попробуй использовать.
Anonymous
Здравствуйте, как в одном проекте создать 2 bottom navigation. Заранее спасибо
SerJanna
как минимум, что ты не умеешь делать скриншоты..
Ну вдруг у человека нет телеги на компьютере) легче же сфоткать и отправить
Ravil
Ну вдруг у человека нет телеги на компьютере) легче же сфоткать и отправить
Можно поставить приложуху на телефон и сделать скриншот.
Arsen
что за кейс?
Andrew
Коллеги, в android возможно сейчас автоматически "поднимать трубку" в приложении?
Andrew
Или гугл не пропустит в плей маркет такое?
AppHack
Всем привет кто может взломать вк