我有一个关于Android活动的问题。一个活动的方法为addContentView(View)
,而ViewGroup有一个(类似的)addView(View)
方法。不幸的是,它的无证件“Where”来自addContentView
的视图被放置。它是否像LinearLayout
只是将视图添加到底部?它更像是一个FrameLayout
,它增加了它的视图“onTop”?它取决于setContentView
设置的ViewGroup
? 如果我潜入源中,我会看到addContentView
将调用Window
的抽象方法addContentView
。不幸的是我看不出哪个类正在实现这个方法。那么,活动addContentView
的行为究竟是什么?Activity.addContentView(View)== ViewGroup.addContentView(View)?
11
A
回答
37
每个活动的基本布局是FrameLayout
。这意味着您通常通过setContentView()
设置的布局是此布局的一个子项。 addContentView()
只增加了另一个孩子,因此它的行为类似于FrameLayout
(这意味着它会在现有的UI元素之上添加新的UI元素)。
您可以使用ANDROID_SDK\tools
文件夹中名为hierachyviewer
的工具进行检查。这里有两个截图:
这是布局调用addContentView()
之前,我的活动包括默认的FrameLayout的,持有的LinearLayout一个按钮(我的布局在这里)。这反映在这里的最后一行,上面的其他元素是标题/状态栏。
通过addContentView()
添加一个TextView之后,它看起来是这样的。你可以看到基础FrameLayout有一个新的孩子。
相关问题
- 1. VIEW或MATERIALIZED VIEW?
- 2. android list view view addition
- 3. AngularJS ng-view not showing view
- 4. achartengine switch view chart type in view
- 5. One view controller with multiple views vs multiple view controller in a larger view controller
- 6. Android:Grid View
- 7. 从View
- 8. 与VIEW
- 9. CakePHP'Missing View'
- 10. Qt4 Model/View - 在View中转换数据?
- 11. AngularJS/Ionic-ion-nav-view vs ion-view
- 12. 哪个更好的ng-view或ui-view?
- 13. AngularJS。包含在ng-view中的ui-view
- 14. $ view-> start();和$ view-> finish();在Phalcon
- 15. Laravel 4 $ view-> nest()with workbench view
- 16. UIPicker With View + View Tapped!=选定行
- 17. 关于IB,init,load view和view did load?
- 18. {{view}}和{{#view}}之间有什么区别
- 19. MVP(Model View Presenter)或MVC(Model View Controller)
- 20. Fluid-Alias-View-Helper with another view helper
- 21. View和View Controller有什么区别?
- 22. Table view中的不同图像View?
- 23. one view two controllers
- 24. View是无形
- 25. {%extends“view/base.html”%}
- 26. ViewModels per View
- 27. Make MPMoviePlayerController main view
- 28. Qlik View and Sense
- 29. Backbone View El confusion
- 30. View-tag dosen't work
哇。非常感谢您的回答,谢谢。你的建议和你建议的工具将为我节省很多时间!你是使Stackoverflow如此之好的用户! – 2012-04-02 16:22:12
很好的回答!支持! – 2013-01-07 06:59:50
+1为'hierachyviewer' – RootCode 2013-08-02 09:18:48