Android:可以在tabview中的翻板中使用滚动视图吗?

时间:2010-06-11 09:56:02

标签: android vertical-scrolling

我有一个 TabView ,在第一个标签上我有一个 ViewFlipper ,显示两页ImageButtons (比如 buttonsPage1 buttonsPage2 )。

当处于横向时,我需要图像按钮页面可滚动,所以我尝试在 buttonsPage1 上添加 ScrollView ,在 buttonsPage2上添加另一个 。我得到一个StackOverflowError。

然后我尝试从pageButtons1和2中抑制ScrollView并在ScrollView中包含ViewFlipper。我得到了相同的StackOverflowError。

如果我完全删除ViewFlipper,应用程序会按预期运行,不会发生错误,只有我 DO 在横向时才需要滚动。

请有人帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

  

我收到了StackOverflowError。

如果您的堆栈跟踪列出了一大堆内部Android方法,这些方法似乎与绘制UI有关,那么您的UI太复杂了。使用hierarchyviewer和您的模拟器查看您的活动的View / ViewGroup树,并找到删除图层的方法。例如,如果您的TabWidget没有ViewFlipper,而是使用Intent来指定标签中的活动,则会为您的{{1}添加多个图层层次结构不仅仅是使用View作为标签的内容。

我的一般经验法则是尝试将视图层次结构保持为单个数字深度,从根到最长的分支进行测量。当你达到15层时,你几乎肯定会在某个地方崩溃。

如果您的Views错误似乎与绘制您的用户界面无关,则需要发布堆栈跟踪作为此问题的修改。