@android_ru

Страница 1166 из 3205
Quarx2k ?
27.03.2017
22:42:57
class test { String a; String b; }

Даже точнее так Class AnyName { Test test } class Test { String a; String b; Либо просто Либо Map<String, String> } Тогда выйдет именно как ты написал

Юсуф
27.03.2017
22:51:16
еще лучше с gson

Wladižlaw ?
27.03.2017
22:58:31
Какую рекламную платформу выгодней всего подрубить для приложения с 15к активных юзеров, если я хочу показывать нативную рекламу и возможно экраны (но пока хз)

Google
Андрей
27.03.2017
22:58:51
> Либо Map<String, String> ну да - ну да Map<String, String> test = new HashMap<>(); test.put("a", "aaaa"); test.put("b", "bbbb"); Map<String, Object> requestParams = new HashMap<>(); requestParams.put("test", test);

Ivan
27.03.2017
22:58:53
Прошу помощи. В AndroidStudio имя класса, где вкладка, подчеркнуто красным. Как быстро найти строку с ошибкой? 2 минуты уже не могу найти.

Андрей
27.03.2017
23:00:04
справа, возле скрола, должен бить красный прямоугольник в том месте

Ivan
27.03.2017
23:01:36
Благодарю!

Dim
28.03.2017
00:07:09
Народ, кто делал триальные проги для Google Play? Как это делается?

все, нашел в официальных примерах.

Никита
28.03.2017
03:44:29
омг да сколько можно СДК обновлять?! каждый день по 600 метров

Никита
28.03.2017
03:49:18
ну сейчас качает сапорт либы, тулзы и эмуль

http://image.prntscr.com/image/4d2639188bc94ae9b885e619ab910299.png

Yergali
28.03.2017
03:51:39
всем привет

Google
Dim
28.03.2017
03:53:52
Yergali
28.03.2017
03:56:01
кто юзал google chart как увеличить размер процента внутри диаграммы?



вопрос не актуален

Ivan
28.03.2017
04:12:01
наброшу - https://github.com/brianegan/bansa как по мне так если что-то подобное сцепить с mvi будет вообще красота,правда сам mosby-mvi хранит стейт в себе и это немного ломает идею стора и редюсера

NermaN
28.03.2017
04:12:05
Android Studio чето стал мертво зависать ни с того ни с сего под маком

Да и под виндой тоже

Кто знает к чему бы это

Никита
28.03.2017
04:14:49
Кто знает к чему бы это
под виндой тоже бывает, апотом открываешь таск менеджер а там 700 процессов adb

fulld
28.03.2017
04:45:40
Автообновления отрубать надо

Так проще не отвлекаться на "всё сломалось"

Никита
28.03.2017
04:58:33
Подскажите какой-нибудь паттерн для работы с фрагментами

Не должен же фрагмент с фрагмент менеджером общаться?

Ilya
28.03.2017
05:12:46
почему нет? есть же getChildFragmentManager()

Никита
28.03.2017
05:13:56
почему нет? есть же getChildFragmentManager()
Помню как-то на лекции мне рассказывали что общения между фрагментами быть не должно, всё происходит через активити.

Ilya
28.03.2017
05:14:45
ну согласен

Никита
28.03.2017
05:14:54
Вот я и думаю, у меня происходит некоторое события в первом фрагменте, и мне надо реплэйснуть первый фрагмент вторым и передать в него строку

Ilya
28.03.2017
05:15:30
можно через евентбас это сделать, можно через колбек

Никита
28.03.2017
05:16:36
Ну т.е. просто во фрагменте cameraFragment = CameraFragment.newInstance(); getSupportFragmentManager().beginTransaction() .replace(R.id.fragment_container, cameraFragment, CAMERA_FRAGMENT_TAG) .commit(); это совсем деревянно?

Ilya
28.03.2017
05:18:20
а как по другому один фрагмент на другой заменить?

Google
Ilya
28.03.2017
05:18:51
я так делаю у себя. Может тут кто-нибудь лучше метод знает

Никита
28.03.2017
05:19:26
Я имею в виду кто это должен делать? Сам фрагмент или активити-контейнер?

Ilya
28.03.2017
05:20:43
у меня это делает активити. В первом фрагменте я вызываю коллбек активити, и активити подменяет первый фрагмент вторым

Ilya
28.03.2017
05:23:09
чет я не понял

Никита
28.03.2017
05:23:25
XD

ну блин...Callback объект из активити во фрагмент ты как передаешь?

Ilya
28.03.2017
05:23:56
а понял

Todor
28.03.2017
05:26:25
В он аттач лучше всего кастить, читал

Gleb
28.03.2017
05:26:28
? Господа, если уж передаёте callback во фрагмент...))) тогда уж легче MainActivity.this.doSomething() дернуть прям из фрагмента оттуда где надо)))

Askar
28.03.2017
05:27:35
? Господа, если уж передаёте callback во фрагмент...))) тогда уж легче MainActivity.this.doSomething() дернуть прям из фрагмента оттуда где надо)))
один фрагмент может юзаться в разных активитях, поэтому так MainActivity.this.doSomething() лучше не делать

Ilya
28.03.2017
05:27:37
короче, я тоже делаю так, как господа выше ответили - через onAttach

Юсуф
28.03.2017
05:29:00
Почему во фрагменте ссылка на контекст не работает? Т.е. если сохранить как context = getActivity(), то этот контекст не работаеь

Gleb
28.03.2017
05:29:19
один фрагмент может юзаться в разных активитях, поэтому так MainActivity.this.doSomething() лучше не делать
ну как бы тогда, сам понимаешь что и колбэки сувать в newIstance - плохая идея)) Просто если идти по- пути "забивания" - то уж лучше "забивать" до конца - кода меньше ;)

Askar
28.03.2017
05:30:05
Google
Askar
28.03.2017
05:30:35
я не предлагаю в newInstance это делать, также кастить в onAttach или еще где-то, но не к активити, а к интерфейсу
более универсальное решение, без привязки к конкретному классу активити

Юсуф
28.03.2017
05:33:37
Так то оно так, можно юзатб гетактивити

Но почему ссылка не работает?

Gleb
28.03.2017
05:37:05
А как НЕ забивать? есть best practices?
Да, посмотри доки, видюхи...очень много было про фрагменты. Или попробуй заимплементить Master/Detail - там сразу будет понятно как они и зачем. Ну в общем виде - у тебя фрагмент - это вполне себе автономный модуль, который живёт своей жизнью самостоятельно. Наружу торчат кнопочки и переключатели (public методы, сеттеры/геттеры), а сам о внешнем мире знает только между onAttach/onDetach - в этом промежутке ему будет доступна активность, к которой его приаттачили. Как сказали выше ребята, твой фрагмент, также может внутри иметь публичный интерфейс - который обязательно должен быть заимплеменчен теми активностями, которые хотят с ним работать (иначе IllegalArgumentException - по гайдам) и в onAttache когда ты получаешь экземпляр активности - приводишь её к этому интерфейсу. Это должно быть единственной точкой соприкосновения с внешним миром. И тогда ты можешь использовать один и тот же фрагмент в разных частях приложения.

Askar
28.03.2017
05:39:50
? Никита когда создаешь новую активити с фрагментом из темплэйтов студии, там нагенерен код, о коротом выше пишет Глеб, с интерфейсами и коллбэками

Admin
ERROR: S client not available

Никита
28.03.2017
05:41:21
Всё я понял про колбек

@Override public void onAttach(Context context) { super.onAttach(context); if (context instanceof OnFragmentInteractionListener) { mListener = (OnFragmentInteractionListener) context; } else { throw new RuntimeException(context.toString() + " must implement OnFragmentInteractionListener"); } }

забыл что контекст есть от активити...

Gleb
28.03.2017
05:45:21
@Override public void onAttach(Context context) { super.onAttach(context); if (context instanceof OnFragmentInteractionListener) { mListener = (OnFragmentInteractionListener) context; } else { throw new RuntimeException(context.toString() + " must implement OnFragmentInteractionListener"); } }
? оно самое, тока наверное лучше б еще в onDetach его обнулить обратно(дабы избежать казусов) - и каждый раз перед использованием проверять на нулл Либо как предлагают шаблоны студии (давно не проверял - но раньше в эклипсе так было) - до onAttach и после onDetach - присваивать листенеру Stub(Dummy)-реализацию, которая просто ничего не делает, чтоб каждый раз не чекать null

Gleb
28.03.2017
05:56:05
Имхо, нулл-чекинг лучше выглядит, чем стаб)
ну... это уже ... вопрос вкуса, хотя мне тоже так кажется, что нул чек всёж по-удобнее)) главное - принцип (не забывать действовать зеркально в ЖЦ(везде, не тока во фр-х), и помнить что есть жизнь за пределами onDetach/onAttach)

Хикка
28.03.2017
05:56:34
)

Никита
28.03.2017
05:59:21
Аминь

WTF? У меня у SurfaceView в xml стоят wrap_content, затем в onResume() фрагмента я задаю ему конкретные ширину и высоту. Просто при старте приложения все нормально показывает высоту 720, а когда попает фрагмент из бэкстека то сурфейс становится на весь экран растянут, хотя surfaceView.getLayoutParams().height всё также возвращает 720

Анужен ли этот бэкстек или делать реплейс фрагмента по бэкпресс тоже норм?

Dmitry
28.03.2017
06:44:31
вопрос к знатокам, если следовать чистой архитектуре, важно ли все слои разделять по разным модулям или можно все в одном модуле делать ?
Надо следовать здравой логике, а не архитектуре. Разбиение на модули позволяет проще выделить модуль в либу и переиспользовать в другом проекте, а так же позволяет компилировать модуль без всего проекта (если он от остальных не зависит), но скорость компилации всего проекта замедлится. Вот и делай выводы.

Gleb
28.03.2017
06:44:51
Поробуй SurfaceView заменить на TextureView. Если проблема останется, значит что-то у тебя в коде не правильно Если проблема уйдет, а нужен всё-таки именно SurfaceView, значит то что окрывается поверх - делай в отдельной активности

Google
Семен
28.03.2017
06:52:31
У гугла есть на гитхабе хороший код

С камерой серфейсвью и тексчурвью

Cameraview-library вроде

Никита
28.03.2017
07:00:30
Блин. и правда если открывать активити новое то при возврате всё норм...

А держать активити только ради 1 фрагмента это тоже не оч?

Никита
28.03.2017
07:05:19
по-моему, вполне норм)
Я помню у Udacity были такие учебные проекты, куча активити у каждой всего 1 фрагмент... А в чем смысл?

Anton
28.03.2017
07:06:26
Ну они так хотят чтобы активити был чисто контейнером

Не важно один там фрагмент или много

Gleb
28.03.2017
07:27:28
А держать активити только ради 1 фрагмента это тоже не оч?
Тут скорее ноги растут из другого ? Вообще по идее для захвата из камеры - используется универсальный интент, который сделает тебе capture стоковым приложением (кстати, там тож вряд ли в той же активити открывают фрагменты поверх - обычно либо выскакивают кнопочки с настройками, либо уже др активность). Но допустим, в твоём случае нужна именно своя камера, от этого суть не меняется - ты пишешь полностью свой аналог CaptureCameraActivity, которая вот тока кэпчуром(with preview) и занимается. Всё остальное - не её задача, и чему-то другому, каким-то навигациям/переходам внутри - там-то особо и нечего делать. Это всё тот же - startActivitForResult для захвата видео/картинки, только твой собственный.

Никита
28.03.2017
07:30:35
Еще вопрос мне поравился как во фрагментах сделан метод newInstance() и я написал такой же только для активити - newIntent(), такое вообще пользуется?

типа

public static Intent newIntent(Context context, String imagePath) { Intent intent = new Intent(context, CropActivity.class); intent.putExtra(IMAGE_PATH_KEY, imagePath); return intent; }

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