我的RelativeLayout有一些填充,但对于某个SurfaceView,我希望它没有填充。我将填充设置为0dp,但它仍然遵循RelativeLayout。我如何覆盖它?Android:覆盖RelativeLayout
回答
如果您的根布局设置了填充,那么即使您为子视图设置了0dp填充,也会因根布局而产生填充。使用嵌套布局并将填充分配给所需的布局。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<RelativeLayout><surfaceview></surfaceview></RelativeLayout> //add padding here if you want
<RelativeLayout><Button></Button></RelativeLayout> //do not add padding here if you do not want
</RelativeLayout>
我希望你已经为RelativeLayout而不是SurfaceView设置了填充。
你可以得到的RelativeLayout的实例,并使用下面的代码在运行时设置填充:
RelativeLayout element = MainLayout.findViewById(id);
if (element!= null)
element.setPadding(0.0.0.0);
另一种方法:
您可以创建自己的小部件,在使用它们的布局文件。
package com.android.xxx
public class MyRelativeLayout extends RelativeLayout {
}
在您的布局文件中,使用MyRelativeLayout;与使用RelativeLayout相同的方式。
但只是覆盖填充,我不会建议你创建自己的控件。我上面的解决方案应该是更好的方法。
看来您的解决方案是以编程方式更改RelativeLayout。我想要一些元素具有自己的布局,与RelativeLayout不同。 – onepiece
您可以创建自己的小部件并在布局文件中使用它们。 包com.android.xxx 公共类MyRelativeLayout扩展的RelativeLayout { } 在布局文件,使用MyRelativeLayout;与使用RelativeLayout相同的方式。
- 1. 的RelativeLayout的TextView覆盖
- 2. AdMob AdView在RelativeLayout中覆盖Listview
- 3. 如何覆盖RelativeLayout中的视图?
- 4. 以编程方式覆盖视图RelativeLayout
- 5. Android - 按钮仅覆盖RelativeLayout中的TextView版本5.0+
- 6. Android的 - 如何知道是否覆盖另一个视图RelativeLayout
- 7. Android覆盖onBackPressed()
- 8. 覆盖android ImageView
- 9. 覆盖Android ArrayAdapter
- 10. Android/Java - 覆盖
- 11. Android GUI覆盖
- 12. Android Motionevent覆盖
- 13. Android OnNavigationListener覆盖?
- 14. Android launchMode:singleTask覆盖
- 15. Android,地图覆盖
- 16. Android图像覆盖
- 17. Android地图覆盖
- 18. Android路由覆盖
- 19. Android - 覆盖android.content.Resources类
- 20. Android覆盖项目
- 21. Android覆盖线程?
- 22. Android布局覆盖
- 23. openstreetmap覆盖android mapview
- 24. Android方法覆盖
- 25. Android onRestoreInstanceState覆盖值
- 26. Еclipse(android)覆盖ID
- 27. 覆盖覆盖?
- 28. C++覆盖...覆盖?
- 29. 覆盖与覆盖
- 30. 覆盖或覆盖
你能解释这一点更 – anddevmanu
@anddevmanu我有一个RelativeLayout的具有填充,这样的话每个元素得到填充。然而,让我们说我想要一个没有填充的按钮。我试着将android:paddingLeft设置为仅用于该Button的0dp,但它仍以可视方式结束填充,因此我认为它仍然遵循RelativeLayout。我希望Button的布局与RelativeLayout不同。 – onepiece