public void ViewsHaveMatchingTypeHashCodes() { var text = new Text("Foo").GetContentTypeHashCode(); var text2 = new Text("Bar").GetContentTypeHashCode(); Assert.Equal(text, text2); text = new HStack() { new Text("Foo"), }.GetContentTypeHashCode(); text2 = new HStack() { new Text("Bar"), }.GetContentTypeHashCode(); Assert.Equal(text, text2); text = new HStack() { new Text("Foo"), new Button("Foo"), }.GetContentTypeHashCode(); text2 = new HStack() { new Text("Bar"), new Button("Bar"), }.GetContentTypeHashCode(); Assert.Equal(text, text2); //Not Equal Section text = new HStack() { new Text("Foo"), }.GetContentTypeHashCode(); text2 = new HStack() { new Button("Bar"), }.GetContentTypeHashCode(); Assert.NotEqual(text, text2); text = new HStack() { new Text("Foo"), }.GetContentTypeHashCode(); text2 = new VStack() { new Button("Foo"), }.GetContentTypeHashCode(); Assert.NotEqual(text, text2); }
public void Test3() { HStack hStack = new HStack(); Stack <int> stack = new Stack <int>(); hStack.Push(1); stack.Push(1); Assert.Equal(stack.Pop(), hStack.Pop()); }
protected void UpdateChildren(HStack stack) { var children = stack.GetChildren(); if (views.Count == children.Count) { bool areSame = false; for (var i = 0; i < views.Count; i++) { var v = views[i]; var c = children[i].ToView(); areSame = c == v; if (!areSame) { break; } } if (areSame) { return; } } foreach (var v in views) { base.RemoveView(v); } views.Clear(); foreach (var child in children) { var cview = child.ToView() ?? new AView(AndroidContext.CurrentContext); views.Add(cview); //cview.ContentMode = UIViewContentMode.Top; base.AddView(cview); } }
public void SetView(View view) { stack = view as HStack; UpdateChildren(stack); stack.ChildrenChanged += Stack_ChildrenChanged; }