Димас
всем привет. помогите пожалуйста, не знаю как перенести showInfo в активити, которое будет открываться после нажатия кнопки
Димас
через intent
Dmytro
putExtra("yourkry", sb.tosTring());
Anonymous
ща бы транслитом файлы называть
Димас
Спасибо
Димас
Та мне для курсового, я сделаю и забуду
Димас
)
Alex
Отображать экран отдельный для этого, это ни разу не юзер френдли. Допустим, вы сидите листаете ленту ВК, у вас отвалился интернет, но выведь уже кучу всего загрузили, и можете смотреть то что есть, а так, вы не даете пользователю выбора, кроме как ждать интеренета и смотреть на экран заглушку
Согалсен с Вами. Тогда сейчас внедрю в проект способ который реализаван в ссылке которую Вы бросали в самом начале. Она выглядит, в виде всплывающего сообщения внизу экрана(забыл как называется), более юзер френдли чем мой кейс.
Alex
snackbar
точно! спасибо)
Roman
Как часто вам приходилось именно пинговать в приложении для того чтобы удостовериться что интернет появился? Обычно люди либо чекают соединение что-бы не делать запрос без него либо делают запрос и обрабатывают результат, в том числе и ошибки. А вот пинговать для убеждения что есть и соединение и интернет доступен - это, как по мне оверхед
Пример простой - у тебя есть сеть, но нет интернета. Конекшн будет тру, а загрузить данные ты не сможешь, потому что нет интернета. Позволять капаться в вашем кэше или нет, лично ваша прирогатива, а уведомить пользователя о том что появился интернет и он может продолжить постить свои фоточки - другое. И это просто реализуется ввиде Snackbar-а . А делать вид словно ничего не произошло - как раз плохой тон. Когда я пишу сообщение, а оно не отправляется и мне приходится выяснять почему же это сообщение не уходит. Пинговать же можно при смене стейта у конекшена и каждые 30-60 сек после смены, если не удалось получить 200-ую.
Dmitriy
Согалсен с Вами. Тогда сейчас внедрю в проект способ который реализаван в ссылке которую Вы бросали в самом начале. Она выглядит, в виде всплывающего сообщения внизу экрана(забыл как называется), более юзер френдли чем мой кейс.
А вы уверены что это нужно? Я так понимаю вы при каждом отваливании интернета будете его показывать, а если человек будет в метро или просто связь будет отслаиваться каждые 5 секунд? Такой подход тоже не фонтан)
Anonymous
лучший способ чекнуть инет - ловить IOException
Dmitriy
Пример простой - у тебя есть сеть, но нет интернета. Конекшн будет тру, а загрузить данные ты не сможешь, потому что нет интернета. Позволять капаться в вашем кэше или нет, лично ваша прирогатива, а уведомить пользователя о том что появился интернет и он может продолжить постить свои фоточки - другое. И это просто реализуется ввиде Snackbar-а . А делать вид словно ничего не произошло - как раз плохой тон. Когда я пишу сообщение, а оно не отправляется и мне приходится выяснять почему же это сообщение не уходит. Пинговать же можно при смене стейта у конекшена и каждые 30-60 сек после смены, если не удалось получить 200-ую.
А не логичнее ли ошибки обрабатывать? Если есть сеть но нет инета ваш запрос свалится в failure. И необходимости честь инет для этого нет. Как писал выше если у вас вообще ничего на экране нет, из за того что нет инета, то да, разумно при его появлени обновить но не показывать просто так снеки
Anonymous
Кстати изи сделать авторетрай
Roman
так никто и не говорит чекать инет когда он есть
Nick Senchurin
а кто-нибудь пробовал делать startActivityForResult другого приложения + флаг FLAG_ACTIVITY_FORWARD_RESULT, а то назад в исходное приложение у меня приходит нулл
Alex
Кстати изи сделать авторетрай
т.е. не уведомив пользователя релоадить дату?
Anonymous
и он появился
Alex
если не было инета
а как пользователь поймет по какой причине у него все перерисовалось? так если будет хотябы snack bar, это будет более информативно и понятно
Roman
То есть, я не говорю что ошибки нужно игноришь, я говорю что нужно обрабатывать ошибки а не состояние интернета
Я говорю что смена конекшкна это не тоже самое что есть интернет. A если у вас есть конекшн и нет интернета, то после того как он появится - как вы поймете что нужно выполнить те запросы, которые стоят в очереди?)
Anonymous
на еррорвью
Alex
мы пишем что будем обновлять когда появится инет
я не говорю как реализовать, а то как это показать пользователю.
Alex
текстом?
вот! по этому реализовать все что связано со snack bar-ом и так далее.
Anonymous
и он снизу как бы
Dmitriy
Я говорю что смена конекшкна это не тоже самое что есть интернет. A если у вас есть конекшн и нет интернета, то после того как он появится - как вы поймете что нужно выполнить те запросы, которые стоят в очереди?)
Складывать запросы в стек - мне в моей практике не приходилось, для подавляющего большинства приложений достаточно обработать ошибку и изменить состояние вью, добавив сообщение об ошибке с предложением обновить. Если же хранить стек и пытаться его воспроизводить, то наверное да, я бы действительно пинговал. Но снэк на появление инета - это сомнительное решение.
Dmitriy
Дело в том что я не разработчик хрома, я сужу лишь из своей практики)
Roman
Вобщем, модель поведения может быть разной в зависимости от поставленной задачи и работы вашего приложения, главное сделать максимально юзерфрендли :)
Anonymous
юзерфрендли != с пофигизмом
Anonymous
если лень то конечно снекбар
Dmitriy
Если так принципиально хранить запросы в стеке, повторять при появлении инетА, то мне кажется рест апи тут само по себе не подходит, юзать сокеты да и все
Nikita
если у тебя в build файле все норм, то возможно какие-то другие библиотеки в твоем проекте используют другую версию support либы, чтобы ошибка исчезла просто добавь ту библиотеку на которую ругается с правильной версией
Searched in the following locations: file:/Users/user/Library/Android/sdk/extras/m2repository/com/android/support/appcompat-v7/26.1.1/appcompat-v7-26.1.1.pom. возникает такая ошибка, заглянул в папку действительно там пусто, кто нибудь сталкивался с этим?
Anton
почему, обрабатываю, просто есть задача реализовать конкретно отваливание от интернета.
Так если вы уже обрабатываете там и получите что ошибка по причине отвала получилдась
Anton
не так. В хроме если нет инета будет показыватся ошибка при нажатие на новую ссылку. А то что уже загружено можно просмотреть
Rail
Всем привет! #whoiam Я из Казани, работаю PHP-программистом, интересуюсь темой разработки под Android, в основном по вечерам на это есть время. Вопросов пока нет :-) Но интересно как вы решаете возникающие проблемы в группе.
Vadim
можно ли заменить List<List<Float>> какой-то другой структурой ?
Nikita
Матрица?
Nikita
можно ли заменить List<List<Float>> какой-то другой структурой ?
Можно делать списки, можно деревья, можно массивы - подо что оптимизируем?
Aleksandr
когда надоело придумывать нормальные названия для методов
Aleksandr
fun Any.isDeviceForWhitePeople() : Boolean = Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP
Vadim
Можно делать списки, можно деревья, можно массивы - подо что оптимизируем?
это список со списками точек, для отрисовки polygon'а
Madiyar
List<Polygon> 😁
Nick Senchurin
а вообще, кто-нибудь юзал в инентах флаг FLAG_ACTIVITY_FORWARD_RESULT ?
Artem
Ребята, есть диалог с 3 RadioButton. При нажатии на третью кнопку из RadioGroup должна появляться editText, в чём проблема?
Artem
public void showDialogChooseRace() { LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE); View formElementsView = inflater.inflate(R.layout.fragment_choose_race, null, false); RadioGroup raceRadioGroup = formElementsView .findViewById(R.id.race_radio_group); EditText etSpecifyRace = formElementsView .findViewById(R.id.et_specify_race); etSpecifyRace.setVisibility(View.INVISIBLE); new AlertDialog.Builder(UserDetailsActivity.this).setView(formElementsView) .setTitle(R.string.choose_race) .setPositiveButton("OK", (dialog, id) -> { if (raceRadioGroup.getCheckedRadioButtonId() != -1) { int selectedId = raceRadioGroup .getCheckedRadioButtonId(); final RadioButton selectedRadioButton = formElementsView .findViewById(selectedId); race = selectedRadioButton.getText().toString(); if (selectedId == R.id.btn_race_other) { etSpecifyRace.setVisibility(View.VISIBLE); if (!etSpecifyRace.getText().toString().isEmpty()) { Toast.makeText(this, R.string.invalid_details, Toast.LENGTH_LONG).show(); } else race = etSpecifyRace.getText().toString(); } if (!race.isEmpty()) etRace.setText(race); else Toast.makeText(this, R.string.invalid_details, Toast.LENGTH_LONG).show(); dialog.cancel(); } else { Toast.makeText(this, R.string.invalid_details, Toast.LENGTH_LONG).show(); dialog.dismiss(); } dialog.cancel(); }).show(); }
Artem
Не появляется текстьвью
Arsen
скорее pastebin.com или codeshare.io
Anonymous
вообще зачем инфлейт
Anonymous
суй леяаут в setView
Anonymous
потом show() и уже дальше твои findViewById
Anonymous
скорее pastebin.com или codeshare.io
ну гист в студии доступен в два клика
Artem
https://pastebin.com/Dg4UZbvU
Dmytro
Кто использует LiveData ? Какие плюсы (если есть) если переходить от MVP ? Короче код ?
Artem
Помогите пожалуйста, проблемы с появлением editText при выборе последнего элемента RadioGroup
Ярослав
кто-нибудь работал с json-rpc? есть некая библиотека (нужна ли вообще?) или придётся юзать нативные методы?
Dmytro
Помогите пожалуйста, проблемы с появлением editText при выборе последнего элемента RadioGroup
ты куда свой код запихнул? на клик "ок"? ты должен слушатель повесить онЧенджЛистенер. и если тру, то показывай своей едит текст
Tishka17
Кто нибудь пробовал через Room открыть базу, созданную до его появления?
Tishka17
Версию указал ту же, таблицы и поля так же назвал, а при открытии: > Room cannot verify the data integrity. Looks like you've changed schema but forgot to update the version number.
CybernatiC
Дайте код как запустить навигатор с приложения любой на выбор пользователя
CybernatiC
Intent launch navigator app
Ярослав
это нативное (или support:design) или кастомное уведомление?