android:clipChildren还能运行吗?

时间:2011-01-18 12:30:29

标签: android android-layout android-2.2-froyo absolutelayout

android:clipChildren是否仍然有效? 我有一个大小的AbsoluteLayout并将clipChildren设置为false。当我添加比大的孩子更大的孩子时,孩子们仍然会被剪掉。

任何人都有这个工作?

使用Android 2.2(API级别8)


更新20-01-11:

我可以做一些类似于RelativeLayout的东西,但android:clipChildren是否适用于此? 顺便说一句,我的应用程序不需要在Android 2.2上的任何其他平台上运行。

2 个答案:

答案 0 :(得分:2)

不推荐使用绝对布局。我建议使用不同的东西。

  

此类已弃用。使用   FrameLayout,RelativeLayout或a   改为自定义布局。

http://developer.android.com/reference/android/widget/AbsoluteLayout.html

编辑:回答您的评论:

被弃用意味着由于某种原因,他们停止开发它。也许有更好的替代品,也许他们不喜欢它的工作方式。无论如何,他们可能会在未来的版本中放弃这种布局(这意味着你的应用程序将无法在未来的Android版本中运行)。

备选方案:

框架布局:

  

FrameLayout旨在阻止   屏幕上显示一个区域   单项。您可以添加多个   孩子到FrameLayout,但都是   孩子们被盯住了左上角   屏幕。孩子们被吸引到了   堆栈,最近添加   孩子在上面。框架的大小   布局是其最大的大小   孩子(加上填充),可见或不可见   (如果FrameLayout的父级允许)。   GONE的视图用于   只有当   setConsiderGoneChildrenWhenMeasuring()   设置为true。

http://developer.android.com/reference/android/widget/FrameLayout.html

相对布局

您还可以使用相对布局。通过它的父对齐每个视图,并根据需要设置左边距和上边距。 这可能是您的最佳选择 IMO。我以前做过这件事并且运作得相当好。

答案 1 :(得分:1)

正如佩德罗所说,这个功能可能是在AbsoluteLayout弃用之后出现的一个补充,所以如果它没有实现,它就永远不会有效。

就评论“这意味着你的应用程序将无法在未来的Android版本中运行”,谷歌承诺绝对不会这样。

  

Dianne Hackborn

     

2009年5月4日星期一上午10点,   Sundog写道:

     
    

我有一个评价很高的应用程序,只是......可能......不......是......     写的...没有AbsoluteLayout,无论Java的敏感性如何     它继续。我猜Android在应用程序方面做得很好     能够关闭整个类别的游戏。

  
     

AbsoluteLayout从1.5消失了吗?   不,您是否无法编写1.5个应用程序   使用它?不,我们曾经说过   有任何计划完全删除它   在未来的任何时候?不,你   需要找到更好的理由成为一个   受害者。如果你找不到一个,就来吧   我们知道你的应用程序的名称和我们   可以确保在下一个打破它   发布。然后你可以 - 实际上 -   抱怨!
   - Dianne Hackborn
Android框架工程师
黑客... @ android.com

以后:

  

我会再说一遍:我们不会这样做   从将来删除AbsoluteLayout   释放,但我们强烈反对   人们使用它。

我认为可以肯定地说它不会被删除,但它也不会获得新的功能/修复。