Bom dia,
Não consegui fazer todos os testes sugeridos ontem, mas consegui resolver o problema.
Basicamente, troquei a lib CardsUI pois nessa tela que estava desenvolvendo não precisaria de nenhuma função específica dela. Só aproveitei o layout, e fiz com um listview.
Quando tiver mais tempo eu testo as sugestões.
Obrigado a todos pelas respostas.
Atenciosamente,
Rafael Barrelo
Em 26 de março de 2013 13:47, Rafael Barrelo <rafaelbarrelo@gmail.com> escreveu:
Vlw Jade Costa,Vou tentar fazer isso também.ObrigadoAtenciosamente,Rafael BarreloEm 26 de março de 2013 12:39, Jade Costa <jademcosta@gmail.com> escreveu:Faz tb um outro teste :) Crie um layout limpo (em outro app android) e vai adicionando views nele.
No mínimo vc vai ter um número :)
Mas, tb achei estranho dar stackoverflow por causa de número de views...
Em 26 de março de 2013 10:10, Rafael Barrelo <rafaelbarrelo@gmail.com> escreveu:Então... o problema não é uma "recursão infinita" pois quando eu uso um layout mais simples para o card ele carrega de boa.Estava vendo a lib CardUI que utilizo e percebi que o erro ocorre quando ele chama o método refresh() pra desenhar os cards na tela. Fui verificar o que esse método faz e vi que ele cria uma table view e vai adicionando os cards que eu defini nas linhas, porém ele cria uma view vazia (Space) entre uma linha e outra.Acho que com isso, ele está estourando a memória do aparelho, por isso o Overflow.Não estou em casa agora, mas vou tentar carregar essas views como um List, sem usar o CardUI pra ver se da certo.Também vou fazer um teste com AsyncTask.Qualquer novidade eu aviso.Obrigado a todos pela ajuda.Atenciosamente,Rafael BarreloEm 26 de março de 2013 08:22, Diogo Henrique <diogjp10@gmail.com> escreveu:Se você colocasse tudo toda essa atualização da UI em um AsyncTask, será que daria certo ? viajei eu acho kkkk
Em 26 de março de 2013 01:40, Jonas Alves <jonasfa@gmail.com> escreveu:Apesar de truncado, no final do log já aparece a PhoneWindow...
Estranho, o stack não me parece grande o suficiente pra causar um Stack Overflow...On Mar 25, 2013 9:35 PM, "Jonas Alves" <jonasfa@gmail.com> wrote:--Lendo o stack trace não consegui identificar o motivo.
Você consegue colar o log completo aqui? Ele me parece truncado.On Mar 25, 2013 8:54 PM, "Jonas Alves" <jonasfa@gmail.com> wrote:O erro é auto-explicativo: stack overflow. Muito provavelmente ele é consequência de uma recursão infinita.
On Mar 25, 2013 8:22 PM, "Rafael Barrelo" <rafaelbarrelo@gmail.com> wrote:Boa noite galera, tudo bem?!Gostaria de saber se o Android tem algum limite de views por layout.Estou criando uma aplicação e uso algumas bibliotecas externas.- https://github.com/nadavfima/cardsui-for-android -> Cards como o Google Now- https://github.com/jfeinstein10/SlidingMenu -> Menu lateral como Youtube- https://github.com/andrelrs/ActionBarSherlock -> ActionBar- https://github.com/JakeWharton/Android-ViewPagerIndicator -> Sliding de conteúdo, como o PlumeO que acontece é o seguinte. Tenho um menu lateral (slidingmenu) e quando clico em uma opção ele infla o fragment principal com um novo fragment. Até ai blz. Mas nesse fragment eu uso o PageIndicator e instancia vários "Cards".Se coloco um layout "simples" para o card ele carrega de boa, mas se coloco um layout um pouco mais complexo, com vários linearlayout, img, textview etc... ele da force close. (StackOverflowError)Isso só ocorre com versões "antigas" < 4.0.Estou achando que ele tem algum limite de views por layout, mas não achei nada da documentação.Quando carrego os cards direto, sem o PageIndicator, ele funciona normalmente.Alguma ideia do que pode ser?O logcat do erro é:03-26 00:18:08.895: I/dalvikvm(245): Stack overflow, expanding (0x42089200 to 0x42089000)
03-26 00:18:08.904: I/dalvikvm(245): Shrank stack (to 0x42089200, curFrame is 0x4208bc64)
03-26 00:18:08.914: D/AndroidRuntime(245): Shutting down VM
03-26 00:18:08.914: W/dalvikvm(245): threadid=3: thread exiting with uncaught exception (group=0x4001b188)
03-26 00:18:08.914: E/AndroidRuntime(245): Uncaught handler: thread main exiting due to uncaught exception
03-26 00:18:08.964: E/AndroidRuntime(245): java.lang.StackOverflowError
03-26 00:18:08.964: E/AndroidRuntime(245): at android.text.Styled.measureText(Styled.java:371)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.text.Layout.measureText(Layout.java:1601)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.text.Layout.getLineMax(Layout.java:655)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.text.Layout.draw(Layout.java:311)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.text.BoringLayout.draw(BoringLayout.java:365)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.widget.TextView.onDraw(TextView.java:4052)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.View.draw(View.java:6535)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.drawChild(ViewGroup.java:1531)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.drawChild(ViewGroup.java:1529)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.View.draw(View.java:6538)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.drawChild(ViewGroup.java:1531)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.View.draw(View.java:6538)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.widget.FrameLayout.draw(FrameLayout.java:352)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.drawChild(ViewGroup.java:1531)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.drawChild(ViewGroup.java:1529)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.View.buildDrawingCache(View.java:6295)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.View.getDrawingCache(View.java:6086)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.drawChild(ViewGroup.java:1456)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.widget.AbsListView.dispatchDraw(AbsListView.java:1324)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.widget.ListView.dispatchDraw(ListView.java:2972)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.View.draw(View.java:6641)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.widget.AbsListView.draw(AbsListView.java:2171)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.drawChild(ViewGroup.java:1531)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.drawChild(ViewGroup.java:1529)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.drawChild(ViewGroup.java:1529)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.drawChild(ViewGroup.java:1529)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.View.draw(View.java:6538)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.drawChild(ViewGroup.java:1531)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.drawChild(ViewGroup.java:1529)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.View.draw(View.java:6538)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.support.v4.view.ViewPager.draw(ViewPager.java:2094)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.drawChild(ViewGroup.java:1531)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.View.draw(View.java:6538)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.drawChild(ViewGroup.java:1531)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.drawChild(ViewGroup.java:1529)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.View.draw(View.java:6538)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.widget.FrameLayout.draw(FrameLayout.java:352)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.drawChild(ViewGroup.java:1531)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
03-26 00:18:08.964: E/AndroidRuntime(245): at com.slidingmenu.lib.CustomViewAbove.dispatchDraw(CustomViewAbove.java:842)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.View.draw(View.java:6538)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.drawChild(ViewGroup.java:1531)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.drawChild(ViewGroup.java:1529)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.drawChild(ViewGroup.java:1529)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.drawChild(ViewGroup.java:1529)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.drawChild(ViewGroup.java:1529)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.View.draw(View.java:6538)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.widget.FrameLayout.draw(FrameLayout.java:352)
03-26 00:18:08.964: E/AndroidRuntime(245): at com.android.internal.policy.impl.PhoneWindow$DecorView.draw(PhoneWindow.java:1830)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewRoot.draw(ViewRoot.java:1349)
03-26 00:18:08.964: E/AndroidRuntime(245): at android.view.ViewRoot.perfoAtenciosamente,--Rafael Barrelo
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
--
Jade Moreira da Costa
--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.






0 comentários:
Postar um comentário