Sidekick 4G上的Android Stackoverflow错误

Sidekick 4G上的Android Stackoverflow错误,android,stack-overflow,fragmentation,Android,Stack Overflow,Fragmentation,我的一个布局显然抛出stackoverflow错误,如下所示 java.lang.StackOverflowError at java.lang.Thread.currentThread(Thread.java:588) at android.widget.ProgressBar.refreshProgress(ProgressBar.java:579) at android.widget.ProgressBar.setProgress(ProgressBar.java:636) at andr

我的一个布局显然抛出stackoverflow错误,如下所示

java.lang.StackOverflowError
at java.lang.Thread.currentThread(Thread.java:588)
at android.widget.ProgressBar.refreshProgress(ProgressBar.java:579)
at android.widget.ProgressBar.setProgress(ProgressBar.java:636)
at android.widget.ProgressBar.setProgress(ProgressBar.java:610)
at com.smartanuj.hideitpro.login.Disguise.onProgressChanged(Disguise.java:255)
at android.widget.SeekBar.onProgressRefresh(SeekBar.java:89)
at android.widget.ProgressBar.doRefreshProgress(ProgressBar.java:570)
at android.widget.ProgressBar.refreshProgress(ProgressBar.java:580)
at android.widget.ProgressBar.setProgress(ProgressBar.java:636)
at android.widget.ProgressBar.setProgress(ProgressBar.java:610)
at com.smartanuj.hideitpro.login.Disguise.onProgressChanged(Disguise.java:255)
at android.widget.SeekBar.onProgressRefresh(SeekBar.java:89)
at android.widget.ProgressBar.doRefreshProgress(ProgressBar.java:570)
at android.widget.ProgressBar.refreshProgress(ProgressBar.java:580)
at android.widget.ProgressBar.setProgress(ProgressBar.java:636)
at android.widget.ProgressBar.setProgress(ProgressBar.java:610)
at com.smartanuj.hideitpro.login.Disguise.onProgressChanged(Disguise.java:255)
at android.widget.SeekBar.onProgressRefresh(SeekBar.java:89)
at android.widget.ProgressBar.doRefreshProgress(ProgressBar.java:570)
at android.widget.ProgressBar.refreshProgress(ProgressBar.java:580)
at android.widget.ProgressBar.setProgress(ProgressBar.java:636)
at android.widget.ProgressBar.setProgress(ProgressBar.java:610)
at com.smartanuj.hideitpro.login.Disguise.onProgressChanged(Disguise.java:255)
at android.widget.SeekBar.onProgressRefresh(SeekBar.java:89)
at android.widget.ProgressBar.doRefreshProgress(ProgressBar.java:570)
at android.widget.ProgressBar.refreshProgress(ProgressBar.java:580)
at android.widget.ProgressBar.setProgress(ProgressBar.java:636)
at android.widget.ProgressBar.setProgress(ProgressBar.java:610)
at com.smartanuj.hideitpro.login.Disguise.onProgressChanged(Disguise.java:255)
at android.widget.SeekBar.onProgressRefresh(SeekBar.java:89)
at android.widget.ProgressBar.doRefreshProgress(ProgressBar.java:570)
at android.widget.ProgressBar.refreshProgress(ProgressBar.java:580)
at android.widget.ProgressBar.setProgress(ProgressBar.java:636)
at android.widget.ProgressBar.setProgress(ProgressBar.java:610)
at com.smartanuj.hideitpro.login.Disguise.onProgressChanged(Disguise.java:255)
at android.widget.SeekBar.onProgressRefresh(SeekBar.java:89)
at android.widget.ProgressBar.doRefreshProgress(ProgressBar.java:570)
at android.widget.ProgressBar.refreshProgress(ProgressBar.java:580)
at android.widget.ProgressBar.setProgress(ProgressBar.java:636)
at android.widget.ProgressBar.setProgress(ProgressBar.java:610)
at com.smartanuj.hideitpro.login.Disguise.onProgressChanged(Disguise.java:255)
at android.widget.SeekBar.onProgressRefresh(SeekBar.java:89)
at android.widget.ProgressBar.doRefreshProgress(ProgressBar.java:570)
at android.widget.ProgressBar.refreshProgress(ProgressBar.java:580)
at android.widget.ProgressBar.setProgress(ProgressBar.java:636)
at android.widget.ProgressBar.setProgress(ProgressBar.java:610)
at com.smartanuj.hideitpro.login.Disguise.onProgressChanged(Disguise.java:255)
at android.widget.SeekBar.onProgressRefresh(SeekBar.java:89)
at android.widget.ProgressBar.doRefreshProgress(ProgressBar.java:570)
at android.widget.ProgressBar.refreshProgress(ProgressBar.java:580)
at android.widget.ProgressBar.setProgress(ProgressBar.java:636)
at android.widget.ProgressBar.setProgress(ProgressBar.java:610)
at com.smartanuj.hideitpro.login.Disguise.onProgressChanged(Disguise.java:255)
at android.widget.SeekBar.onProgressRefresh(SeekBar.java:89)
at android.widget.ProgressBar.doRefreshProgress(ProgressBar.java:570)
at android.widget.ProgressBar.refreshProgress(ProgressBar.java:580)
at android.widget.ProgressBar.setProgress(ProgressBar.java:636)
at android.widget.ProgressBar.setProgress(ProgressBar.java:610)
at com.smartanuj.hideitpro.login.Disguise.onProgressChanged(Disguise.java:255)
at android.widget.SeekBar.onProgressRefresh(SeekBar.java:89)
at android.widget.ProgressBar.doRefreshProgress(ProgressBar.java:570)
at android.widget.ProgressBar.refreshProgress(ProgressBar.java:580)
at android.widget.ProgressBar.setProgress(ProgressBar.java:636)
at android.widget.ProgressBar.setProgress(ProgressBar.java:610)
at com.smartanuj.hideitpro.login.Disguise.onProgressChanged(Disguise.java:255)
at android.widget.SeekBar.onProgressRefresh(SeekBar.java:89)
at android.widget.ProgressBar.doRefreshProgress(ProgressBar.java:570)
at android.widget.ProgressBar.refreshProgress(ProgressBar.java:580)
at android.widget.ProgressBar.setProgress(ProgressBar.java:636)
at android.widget.ProgressBar.setProgress(ProgressBar.java:610)
at com.smartanuj.hideitpro.login.Disguise.onProgressChanged(Disguise.java:255)
at android.widget.SeekBar.onProgressRefresh(SeekBar.java:89)
at android.widget.ProgressBar.doRefreshProgress(ProgressBar.java:570)
at android.widget.ProgressBar.refreshProgress(ProgressBar.java:580)
at android.widget.ProgressBar.setProgress(ProgressBar.java:636)
at android.widget.ProgressBar.setProgress(ProgressBar.java:610)
at com.smartanuj.hideitpro.login.Disguise.onProgressChanged(Disguise.java:255)
at android.widget.SeekBar.onProgressRefresh(SeekBar.java:89)
at android.widget.ProgressBar.doRefreshProgress(ProgressBar.java:570)
at android.widget.ProgressBar.refreshProgress(ProgressBar.java:580)
at android.widget.ProgressBar.setProgress(ProgressBar.java:636)
at android.widget.ProgressBar.setProgress(ProgressBar.java:610)
at com.smartanuj.hideitpro.login.Disguise.onProgressChanged(Disguise.java:255)
at android.widget.SeekBar.onProgressRefresh(SeekBar.java:89)
at android.widget.ProgressBar.doRefreshProgress(ProgressBar.java:570)
at android.widget.ProgressBar.refreshProgress(ProgressBar.java:580)
at android.widget.ProgressBar.setProgress(ProgressBar.java:636)
at android.widget.ProgressBar.setProgress(ProgressBar.java:610)
at com.smartanuj.hideitpro.login.Disguise.onProgressChanged(Disguise.java:255)
at android.widget.SeekBar.onProgressRefresh(SeekBar.java:89)
at android.widget.ProgressBar.doRefreshProgress(ProgressBar.java:570)
at android.widget.ProgressBar.refreshProgress(ProgressBar.java:580)
at android.widget.ProgressBar.setProgress(ProgressBar.java:636)
at android.widget.ProgressBar.setProgress(ProgressBar.java:610)
at com.smartanuj.hideitpro.login.Disguise.onProgressChanged(Disguise.java:255)
at android.widget.SeekBar.onProgressRefresh(SeekBar.java:89)
at android.widget.ProgressBar.doRefreshProgress(ProgressBar.java:570)
at android.widget.ProgressBar.refreshProgress(ProgressBar.java:580)
at android.widget.ProgressBar.setProgress(ProgressBar.java:636)
at android.widget.ProgressBar.setProgress(ProgressBar.java:610)
at com.smartanuj.hideitpro.login.Disguise.onProgressChanged(Disguise.java:255)
at android.widget.SeekBar.onProgressRefresh(SeekBar.java:89)
at android.widget.ProgressBar.doRefreshProgress(ProgressBar.java:570)
at android.widget.ProgressBar.refreshProgress(ProgressBar.java:580)
at android.widget.ProgressBar.setProgress(ProgressBar.java:636)
at android.widget.ProgressBar.setProgress(ProgressBar.java:610)
at com.smartanuj.hideitpro.login.Disguise.onProgressChanged(Disguise.java:255)
at android.widget.SeekBar.onProgressRefresh(SeekBar.java:89)
at android.widget.ProgressBar.doRefreshProgress(ProgressBar.java:570)
at android.widget.ProgressBar.refreshProgress(ProgressBar.java:580)
at android.widget.ProgressBar.setProgress(ProgressBar.java:636)
at android.widget.ProgressBar.setProgress(ProgressBar.java:610)
at com.smartanuj.hideitpro.login.Disguise.onProgressChanged(Disguise.java:255)
at android.widget.SeekBar.onProgressRefresh(SeekBar.java:89)
at android.widget.ProgressBar.doRefreshProgress(ProgressBar.java:570)
at android.widget.ProgressBar.refreshProgress(ProgressBar.java:580)
at android.widget.ProgressBar.setProgress(ProgressBar.java:636)
at android.widget.ProgressBar.setProgress(ProgressBar.java:610)
at com.smartanuj.hideitpro.login.Disguise.onProgressChanged(Disguise.java:255)
at android.widget.SeekBar.onProgressRefresh(SeekBar.java:89)
at android.widget.ProgressBar.doRefreshProgress(ProgressBar.java:570)
at android.widget.ProgressBar.refreshProgress(ProgressBar.java:580)
at android.widget.ProgressBar.setProgress(ProgressBar.java:636)
at android.widget.ProgressBar.setProgress(ProgressBar.java:610)
at com.smartanuj.hideitpro.login.Disguise.onProgressChanged(Disguise.java:255)
at android.widget.SeekBar.onProgressRefresh(SeekBar.java:89)
at android.widget.ProgressBar.doRefreshProgress(ProgressBar.java:570)
at android.widget.ProgressBar.refreshProgress(ProgressBar.java:580)
at android.widget.ProgressBar.setProgress(ProgressBar.java:636)
at android.widget.ProgressBar.setProgress(ProgressBar.java:610)
at com.smartanuj.hideitpro.login.Disguise.onProgressChanged(Disguise.java:255)
at android.widget.SeekBar.onProgressRefresh(SeekBar.java:89)
at android.widget.ProgressBar.doRefreshProgress(ProgressBar.java:570)
at android.widget.ProgressBar.refreshProgress(ProgressBar.java:580)
at android.widget.ProgressBar.setProgress(ProgressBar.java:636)
at android.widget.ProgressBar.setProgress(ProgressBar.java:610)
at com.smartanuj.hideitpro.login.Disguise.onProgressChanged(Disguise.java:255)
at android.widget.SeekBar.onProgressRefresh(SeekBar.java:89)
at android.widget.ProgressBar.doRefreshProgress(ProgressBar.java:570)
at android.widget.ProgressBar.refreshProgress(ProgressBar.java:580)
at android.widget.ProgressBar.setProgress(ProgressBar.java:636)
at android.widget.ProgressBar.setProgress(ProgressBar.java:610)
at com.smartanuj.hideitpro.login.Disguise.onProgressChanged(Disguise.java:255)
at android.widget.SeekBar.onProgressRefresh(SeekBar.java:89)
at android.widget.ProgressBar.doRefreshProgress(ProgressBar.java:570)
at android.widget.ProgressBar.refreshProgress(ProgressBar.java:580)
at android.widget.ProgressBar.setProgress(ProgressBar.java:636)
at android.widget.ProgressBar.setProgress(ProgressBar.java:610)
at com.smartanuj.hideitpro.login.Disguise.onProgressChanged(Disguise...
我的布局是这样的

ScrollView
   -> RelativeLayout
         -> TextView
         -> SeekBar
         -> TextView
         -> SeekBar
          ...... (repeated a total of 6 times)
换句话说,它类似于ScrollView作为布局容器,RelativeLayout作为它的子对象,6(TextView+Seekbar)对作为RelativeLayout的子对象


现在这种布局在99%的手机上运行良好,但在SideKick 4G设备上出现堆栈溢出错误。我没有一台SideKick 4G设备,因此我无法真正测试可能存在的问题。因此,任何人都可以给我一些关于问题的线索。

为什么从
onProgressChanged
事件调用
setProgress
?这似乎是根本原因,它会导致一个循环,就像你得到的一样。仅仅因为它在“99%”的设备上工作并不意味着它是正确的!谢谢Dave,您刚刚输入了正确的字符串,我认为这是一个视图层次结构错误,而应该是setProgress和onProgressChanged的无限循环导致堆栈溢出。