@android_ru

Страница 2032 из 3205
Yury
21.09.2017
06:23:36
да я это понимаю, я имел ввиду во время thumbnailBitmap.compress(Bitmap.CompressFormat.PNG, 100, byteArrayOutputStream); происходит сжатие

но судя по всему, это исходный битмап такой

Dmitry
21.09.2017
06:25:13
А ты не слишком сильно его сжимаешь?

Yury
21.09.2017
06:26:17
так я его никак не сжимаю. я как понимаю в thumbnailBitmap.compress(Bitmap.CompressFormat.PNG, 100, byteArrayOutputStream); 100 это наилучшее качество

Google
Dmitry
21.09.2017
06:27:03
Минуту

Yury
21.09.2017
06:27:16
конечно)

Dmitry
21.09.2017
06:30:13
Проблема скорее всего кроется в этом

Some formats, like PNG which is lossless, will ignore the quality setting

Тебе обязательно png отправлять?

Yury
21.09.2017
06:31:52
нет

но с jpeg вроде также было

щас попробую

Dmitry
21.09.2017
06:32:04
Попробуй jpeg

Yury
21.09.2017
06:32:25
может стоит сначало в файл записать изображение, а потом с uri работать

Dmitry
21.09.2017
06:32:43
Ну методом тыка можно попробовать

Тоже действенный способ

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

Google
Dmitry
21.09.2017
06:34:11
Лучше на пнг тогда потесть

Yury
21.09.2017
06:37:10
с jpeg также все. разрешение изображения 146 на 260 всего. щас попрую с файлом поиграться

Kirill
21.09.2017
06:56:43
Всем привет, кто работал с бд Realm, подскажите, допустим я напишу запрос: получить данные которые изменялись 5 минут назад(одно из полей - время последнего обновления). Так как время бежит, постепенно все больше объектов будут подходить под этот фильтр. Будет ли рилм оповещать об этом или мне самому надо периодически это чекать?

Rocky
21.09.2017
07:55:42
Всем привет! Ребят, чет дело такое, помогите плиз, чето не получается создать кнопку back для textview

Подскажите

Dmitri
21.09.2017
08:12:47
Ребят, вк случаем не объявляли конкурс на android sdk? кажется что-то такое слышал но не могу найти

Denis
21.09.2017
08:21:44
Здравствуйте, уважаемые андроид разработчики. У меня есть вопрос по фрагментам. Есть фрагмент внутри него выскакивает по нажатию на кнопку диалоговое окно с выбором даты. После выбора даты меняется поле класса фрагмента private String date и вызывается метод getData, который формирует List<>, который у меня в данном фрагменте отображается в RecyclerView: mDateSetListener = new DatePickerDialog.OnDateSetListener() { @Override public void onDateSet(DatePicker datePicker, int pYear, int pMonth, int pDay) { monthForDisplay = pMonth + 1; mDateString = pDay + "/" + monthForDisplay + "/" + pYear; mDateButton.setText(mDateString); getData(mChildrenId, mDateString); } }; ________ Метод getData так же вызывается в методе onCreate фрагмента. Вопрос в том, что при первом открытии фрагмента всё отлично. Но после выбора дата, данные в классе изменились (на основе date обновился list с данными), но во фрагменте в RecyclerView данные остались прежними, Как решить данную проблему?

Видео с демонстрацией проблемы прикрепил вверху)

Заранее спасибо)

Я не знаю как отрефрешить данные в recyclerView во фрагменте, когда данные, которые отображает RecyclerView обновились

Данные - это List, который является приватным полем класса фрагмента

Сам лист обновляется, а отображение нет (

Nikita
21.09.2017
08:26:20
adapter.notifyDatasetChanged()

Nikita
21.09.2017
08:26:29
notifyDataSetChanged()

Denis
21.09.2017
08:27:55
Никита, адаптер - это адаптер RecyclerView?

Я вызвал данный метод адаптере RecyclerView, но проблема осталась

mDateSetListener = new DatePickerDialog.OnDateSetListener() { @Override public void onDateSet(DatePicker datePicker, int pYear, int pMonth, int pDay) { monthForDisplay = pMonth + 1; mDateString = pDay + "/" + monthForDisplay + "/" + pYear; mDateButton.setText(mDateString); getData(mChildrenId, mDateString); mAdapter.notifyDataSetChanged(); } };

mAdapter это экземпляр класса, реализованного в виде приватного вложенного класса

/** * Adapter в виде приватного класса для работы RecyclerView */ private class Adapter extends RecyclerView.Adapter<ViewHolder> { private List<SchoolJournal> mSchoolJournalList; public Adapter(List<SchoolJournal> schoolJournalList) { mSchoolJournalList = schoolJournalList; } /** * Метод onCreateViewHolder вызывается виджетом RecyclerView, когда ему потребуется новое * представление для отображения элемента. В этом методе мы создаем * объект View и упаковываем его в ViewHolder. RecyclerView пока не ожидает, что * представление будет связано с какими-либо данными */ @Override public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { LayoutInflater layoutInflater = LayoutInflater.from(getActivity()); View view = layoutInflater .inflate(R.layout.school_journal_list_item_recycler_view, parent, false); return new ViewHolder(view); } /** * Метод onBindViewHolder связывает представление View объекта ViewHolder с объектом модели. * При вызове он получает ViewHolder и позицию в наборе данных. Позиция используется для * нахождения правильных данных модели, после чего View обновляется в соответствии * с этими данными */ @Override public void onBindViewHolder(ViewHolder holder, int position) { SchoolJournal schoolJournal = mSchoolJournalList.get(position); holder.bindCrime(schoolJournal); } @Override public int getItemCount() { return mSchoolJournalList.size(); } }

Igor
21.09.2017
08:36:53
Всем привет! Кто подскажет, почему при использовании Glide, при загрузке изображения через load(new File(pathFile) выделяется огромнейшее кол-во памяти, при том что я использую .diskCacheStrategy. И она не очишается, а только накапливается вплоть до OutOfMemory

Google
Igor
21.09.2017
08:37:31
При загузке через url проблем нет

Юрий
21.09.2017
08:39:32
new File(pathFile) не чистишь потом

Igor
21.09.2017
08:41:18
new File(pathFile) не чистишь потом
Каким образом почистить, если картинки грузятся в адаптере?

Юрий
21.09.2017
08:41:37
FIle file = new FIle() а потом file обнуляй

после загрузки

Igor
21.09.2017
08:49:43
Roman
21.09.2017
08:53:09
народ, кто с реалмом работает

там обязательно нужно для ui иметь отдельные модели?

Roman
21.09.2017
08:54:26
Realm access from incorrect thread. Realm objects can only be accessed on the thread they were created.

Sergey
21.09.2017
08:55:10
Realm access from incorrect thread. Realm objects can only be accessed on the thread they were created.
он завязан на поток в котором был создан

в доке это расписано и как с этим работать правильно

Евгений
21.09.2017
09:01:28
Всем привет Есть аноташка @MainThread Хочется что то похожее но чтобы в рантайме проверялся поток в котором вызывается метод. Хочется аноташками пометить методы которые нельзя вызывать в MainThread Вото чтоб прям валилось приложение если кто вызовет метод в MainThread Может кто встречал нечто подобное?

Евгений
21.09.2017
09:05:22
Нее гугловские аноташки работают просто на этапе анализа кода. Они ниначто не влияют. Просто подсвечивают и все И очень ограниченны в применении особенно с популярной сейчас реактивщиной

Да я знаю как они работают. И работают только в паре если оба метода помечены аноташками Это не то.

Евгений
21.09.2017
09:11:27
Да я могу спасибо ) Это я знаю Может видел кто готовое решение?

Peter
21.09.2017
09:30:27
всем привет. столкнулся с такой проблемой: googleMap setOnCameraIdleListener срабатывает в то время пока пользователь еще двигает карту. в результате срабатывает обновление адреса макрера. пользователю показывается адрес места, куда установлен маркер. как результат тормоза на слабых девайсах кто - нибудь решал такую проблему? (обновление адреса когда пользователь остановит движение)?

Google
Евгений
21.09.2017
09:33:26
видимо придется самому писать (

Denis
21.09.2017
09:36:18
так и есть. потому и хочется чтоб в рантайме валилось или логи сыпало
в вышеупомянутой либке для этого есть @SupposeBackground и @SupposeUiThread с возможностью выбрать конкретный поток

Admin
ERROR: S client not available

Евгений
21.09.2017
09:37:51
понял. смотрю.

Denis
21.09.2017
09:38:46
но она генерит классы, возможно это не круто

если интересно, вот код который пишет разработчик https://paste.ofcode.org/33CGZ3dFMfpLppuW7wzUtvJ а вот во что он генерится https://paste.ofcode.org/36kDfFXP3s3vDWS4Gvqn9T7

Dmitry
21.09.2017
09:41:48
Ребята, кто-нибудь работает с nativica?

- ̗̀ Reakleases ̖́-๎๎ ̅̅ ̆̃๎๎ ̅̅ ̆̃๎๎ ̅̅ ̆̃
21.09.2017
09:41:53
да трудновато потом искать использование активити твоей

да и хер слезешь с этих аннотаций

Михаил
21.09.2017
09:44:24
В google app signing можно несколько сертификатов загрузки сделать?

Denis
21.09.2017
09:47:55
Добрый день.

У меня есть вопрос по фрагментам. Есть фрагмент внутри него выскакивает по нажатию на кнопку диалоговое окно с выбором даты. После выбора даты меняется поле класса фрагмента private String date и вызывается метод getData, который формирует List<>, который у меня в данном фрагменте отображается в RecyclerView: mDateSetListener = new DatePickerDialog.OnDateSetListener() { @Override public void onDateSet(DatePicker datePicker, int pYear, int pMonth, int pDay) { monthForDisplay = pMonth + 1; mDateString = pDay + "/" + monthForDisplay + "/" + pYear; mDateButton.setText(mDateString); getData(mChildrenId, mDateString); } }; ____ Метод getData так же вызывается в методе onCreate фрагмента. Вопрос в том, что при первом открытии фрагмента всё отлично. Но после выбора дата, данные в классе изменились (на основе date обновился list с данными), но во фрагменте в RecyclerView данные остались прежними, Как решить данную проблему? Видео с демонстрацией проблемы прикрепил вверху) Заранее спасибо) Я не знаю как отрефрешить данные в recyclerView во фрагменте, когда данные, которые отображает RecyclerView обновились Данные - это List, который является приватным полем класса фрагмента Сам лист обновляется, а отображение нет (

https://github.com/Denchabaev/SchoolDiary

Вот код на проект

Ребят, помогите, пожалуйста

mAdapter.notifyDataSetChanged();

не работает)

Peter
21.09.2017
09:49:54
а если перезадать адаптер?

Google
Denis
21.09.2017
09:49:55
Вернее работает, но как-то не так

Мне кажется, что пересоздать неправильно

Peter
21.09.2017
09:50:32
задавать setAdapter несколько раз не очень хорошая идея?

Denis
21.09.2017
09:50:46
есть такой вот метод:

private void getData(int idChidren, String dateString) { SchoolLab schoolLab = new SchoolLab(); if (this.mSchoolJournalList != null) { this.mSchoolJournalList.clear(); this.mSchoolJournalList = schoolLab.getSchoolJournalListByChildrenIdAndByDate(idChidren, mDateString); } else { this.mSchoolJournalList = new ArrayList<>(); this.mSchoolJournalList = schoolLab.getSchoolJournalListByChildrenIdAndByDate(idChidren, mDateString); } }

@
21.09.2017
09:51:27
mAdapter.notifyDataSetChanged();
public void swap(List<Lesson> data) { if (data == null || data.size() == 0) { return; } if (lessons != null && lessons.size() > 0) { lessons.clear(); } lessons.addAll(data); notifyDataSetChanged(); }

Denis
21.09.2017
09:51:31
после его отработки вызываю mAdapter.notifyDataSetChanged();

если убрать из метода getData

строку

this.mSchoolJournalList.clear();

то вообще как-будто бы ничего не происходит

как на видео

которое я прикрепил выше

если же оставить метод, как есть с this.mSchoolJournalList.clear();

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