考虑一个textView,如何使用条件或某些逻辑检测textView的父级?
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
SetContentView(Resource.Layout.Main);
TextView text=new TextView(Context);
}
答案 0 :(得分:1)
根据我的理解回答问题:
如果要多次添加和删除控件以获取View的父级,则可以在您的情况下使用parent属性:
text.Parent;
请注意,如果没有父母,则该字段将为null。
因此,在以任何方式使用此父级之前,我建议您对它进行空检查。
if(text.Parent!=null)
答案 1 :(得分:0)
ViewGroup parent = (ViewGroup) textView.getParent();
如果parent为null,则不会将其添加到括号中。
答案 2 :(得分:0)
您可以使用text.Parent
将视图检测为父视图,因此代码如下:
TextView text = new TextView(this);
text.Text = "Text";
IViewParent layout = text.Parent;
if (layout == layout2) //To detect whether it is added to parent or not.
{
text.Text = "I am added to layout2";
Console.WriteLine("layout2 is the parent of text");
}
else {
layout2.AddView(text);
}