自定义RelativeLayout子项忽略所有定位“android:layout_”属性

时间:2011-12-30 05:11:43

标签: android relativelayout

我疯了。

我正在尝试创建一个扩展RelativeLayout而不是LinearLayout的RadioGroup。看起来很简单。我完全关注[这个]。一切都是双重和三重检查。这似乎对很多其他人都很好。

实际使用它后,子项指定的RelativeLayout属性将被完全忽略。所有东西都堆积在左上方,我无能为力的移动它们。

如果我将视图从RadioGroupRelative更改为常规RelativeLayout,则所有内容都会突然完全遵循'android:layout_'属性。看起来就像我希望它看起来一样。

因此。在某个地方,我现在已经重做了5次,我正在失去那些xml属性。我不明白如何。从我所知道的,RadioGroup对它的孩子的布局参数没有做任何事情。当android膨胀布局时,为什么它们不会被应用?

1 个答案:

答案 0 :(得分:0)

[this]没有链接 - 你可以添加吗?另外,请注意发布从RelativeLayout继承的自定义RadioGroup的源代码。据我所知,RadioGroup是一个LinearLayout,所以我假设你已经复制并自定义Android源代码来做这个......

编辑:作为测试,以下代码在您的环境中做了什么?

YourCustomRadioGroup radioGroup = new YourCustomRadioGroup(this);
if (radioGroup instanceof RelativeLayout){
   //do you end up in here?
   Log.d("yourapp","I'm a RelativeLayout!!");
}else{
   Log.d("yourapp","I'm NOT a RelativeLayout! :( ");
}