| | |
| | | public class VideoDoorlockUserListPage : FrameLayout |
| | | { |
| | | FrameLayout bodyView; |
| | | VerticalScrolViewLayout contentView; |
| | | |
| | | Function device; |
| | | |
| | | List<VideoDoorlockUser> userList; |
| | | |
| | | public VideoDoorlockUserListPage(Function function) |
| | | { |
| | | bodyView = this; |
| | | device = function; |
| | | userList = new List<VideoDoorlockUser>(); |
| | | } |
| | | |
| | | public void LoadPage() |
| | |
| | | bodyView.BackgroundColor = CSS_Color.BackgroundColor; |
| | | |
| | | |
| | | var contentView = new VerticalScrolViewLayout() |
| | | |
| | | contentView = new VerticalScrolViewLayout() |
| | | { |
| | | Y = Application.GetRealHeight(64), |
| | | Height = Application.GetRealHeight(667 - 70), |
| | | Height = Application.GetRealHeight(607 - 70), |
| | | }; |
| | | bodyView.AddChidren(contentView); |
| | | |
| | | var btnTip = new Button() |
| | | { |
| | | Y = Application.GetRealHeight(667 - 70), |
| | | Gravity = Gravity.CenterHorizontal, |
| | | Width = Application.GetRealWidth(343), |
| | | Height = Application.GetRealHeight(60), |
| | | TextAlignment = TextAlignment.TopLeft, |
| | | TextSize = CSS_FontSize.PromptFontSize_FirstLevel, |
| | | TextColor = CSS_Color.TextualColor, |
| | | TextID = StringId.VideoDoorlockManagerTip, |
| | | IsMoreLines = true, |
| | | }; |
| | | bodyView.AddChidren(btnTip); |
| | | |
| | | var waitPage = new Loading(); |
| | | bodyView.AddChidren(waitPage); |
| | |
| | | { |
| | | if (pack.Code == StateCode.SUCCESS) |
| | | { |
| | | var list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<VideoDoorlockUser>>(pack.Data.ToString()); |
| | | if (list != null) |
| | | userList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<VideoDoorlockUser>>(pack.Data.ToString()); |
| | | if (userList != null) |
| | | { |
| | | Application.RunOnMainThread(() => { |
| | | foreach (var user in list) |
| | | { |
| | | contentView.AddChidren(new Button() { Height = Application.GetRealHeight(12) }); |
| | | |
| | | var row = new FrameLayout() |
| | | { |
| | | Gravity = Gravity.CenterHorizontal, |
| | | Height = Application.GetRealHeight(50), |
| | | Radius = (uint)Application.GetRealWidth(12), |
| | | BackgroundColor = CSS_Color.MainBackgroundColor, |
| | | Width = Application.GetRealWidth(343), |
| | | }; |
| | | contentView.AddChidren(row); |
| | | |
| | | |
| | | var btnRight = new Button() |
| | | { |
| | | X = Application.GetRealWidth(307), |
| | | Gravity = Gravity.CenterVertical, |
| | | Width = Application.GetMinRealAverage(16), |
| | | Height = Application.GetMinRealAverage(16), |
| | | UnSelectedImagePath = "Public/Right.png", |
| | | }; |
| | | row.AddChidren(btnRight); |
| | | |
| | | var btnName = new Button() |
| | | { |
| | | X = Application.GetRealWidth(12), |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | TextColor = CSS_Color.FirstLevelTitleColor, |
| | | TextSize = CSS_FontSize.TextFontSize, |
| | | Text = user.lockUserName |
| | | }; |
| | | row.AddChidren(btnName); |
| | | |
| | | btnName.MouseUpEventHandler = (sender, e) => { |
| | | var page = new VideoDoorlockUserManagerPage(device, user); |
| | | MainPage.BasePageView.AddChidren(page); |
| | | page.LoadPage(); |
| | | MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; |
| | | }; |
| | | } |
| | | initView(); |
| | | }); |
| | | } |
| | | } |
| | |
| | | |
| | | } |
| | | |
| | | |
| | | void initView() |
| | | { |
| | | contentView.RemoveAll(); |
| | | |
| | | foreach (var user in userList) |
| | | { |
| | | contentView.AddChidren(new Button() { Height = Application.GetRealHeight(12) }); |
| | | |
| | | var row = new FrameLayout() |
| | | { |
| | | Gravity = Gravity.CenterHorizontal, |
| | | Height = Application.GetRealHeight(50), |
| | | Radius = (uint)Application.GetRealWidth(12), |
| | | BackgroundColor = CSS_Color.MainBackgroundColor, |
| | | Width = Application.GetRealWidth(343), |
| | | }; |
| | | contentView.AddChidren(row); |
| | | |
| | | var btnRight = new Button() |
| | | { |
| | | X = Application.GetRealWidth(307), |
| | | Gravity = Gravity.CenterVertical, |
| | | Width = Application.GetMinRealAverage(16), |
| | | Height = Application.GetMinRealAverage(16), |
| | | UnSelectedImagePath = "Public/Right.png", |
| | | }; |
| | | row.AddChidren(btnRight); |
| | | |
| | | var btnName = new Button() |
| | | { |
| | | X = Application.GetRealWidth(12), |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | TextColor = CSS_Color.FirstLevelTitleColor, |
| | | TextSize = CSS_FontSize.TextFontSize, |
| | | Text = user.lockUserName |
| | | }; |
| | | row.AddChidren(btnName); |
| | | |
| | | btnName.MouseUpEventHandler = (sender, e) => { |
| | | var page = new VideoDoorlockUserManagerPage(device, user); |
| | | page.delCallBackAction = () => { |
| | | userList.Remove(user); |
| | | initView(); |
| | | }; |
| | | page.updataUserNameAction = (name) => { |
| | | btnName.Text = name; |
| | | user.lockUserName = name; |
| | | }; |
| | | MainPage.BasePageView.AddChidren(page); |
| | | page.LoadPage(); |
| | | MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; |
| | | }; |
| | | } |
| | | |
| | | |
| | | } |
| | | |
| | | |
| | | } |
| | | |
| | | public class VideoDoorlockUser |