| | |
| | | { |
| | | #region ---TopView--- |
| | | base.ShowPage (); |
| | | this.topTitleBtn.Text = "Alexa list"; |
| | | this.topTitleBtn.Text = "Smart speaker"; |
| | | this.topItemButton.RemoveFromParent (); |
| | | #endregion |
| | | |
| | |
| | | #region 重命名 |
| | | var btnRename = new Button () { |
| | | TextID = R.MyInternationalizationString.rename, |
| | | BackgroundColor = SkinStyle.Current.DelColor, |
| | | BackgroundColor = SkinStyle.Current.TitileView, |
| | | TextSize = 11, |
| | | }; |
| | | |
| | | //保存事件 |
| | | Action<string> renameAction = (newName) => { |
| | | RenameAlexaRemark (newName, speakerInfo, btnName); |
| | | RenameAlexaRemark (newName, speakerInfo, btnName, rowView); |
| | | }; |
| | | |
| | | btnRename.MouseUpEventHandler += (sender, e) => { |
| | | CommonUtlis.Current.ShowEditTextDialog (speakerInfo.remark, renameAction, Language.StringByID (R.MyInternationalizationString.rename)); |
| | | }; |
| | | rowView.AddRightView (btnRename); |
| | | #endregion |
| | | |
| | | #region 删除 |
| | | var btnDelete = new Button () { |
| | | TextID = R.MyInternationalizationString.Delete, |
| | | BackgroundColor = SkinStyle.Current.DelColor, |
| | | TextSize = 11, |
| | | }; |
| | | |
| | | //删除事件 |
| | | Action deleteAction = () => { |
| | | UnbindSpeaker (speakerInfo, rowView); |
| | | }; |
| | | |
| | | btnDelete.MouseUpEventHandler += (sender, e) => { |
| | | CommonUtlis.Current.ShowActionAlert (Language.StringByID (R.MyInternationalizationString.DoYouWantToUnbind), deleteAction); |
| | | }; |
| | | rowView.AddRightView (btnDelete); |
| | | #endregion |
| | | |
| | | } |
| | |
| | | /// <param name="newName"></param> |
| | | /// <param name="speakerInfo"></param> |
| | | /// <param name="btnName"></param> |
| | | void RenameAlexaRemark (string newName, SpeakerInfo speakerInfo, Button btnName) |
| | | void RenameAlexaRemark (string newName, SpeakerInfo speakerInfo, Button btnName, RowLayout rowView) |
| | | { |
| | | |
| | | MainPage.Loading.Start (Language.StringByID (R.MyInternationalizationString.load)); |
| | |
| | | Application.RunOnMainThread (() => { |
| | | speakerInfo.remark = newName; |
| | | btnName.Text = newName; |
| | | rowView.HideRightMenu (); |
| | | Utlis.ShowAlertOnMainThread (Language.StringByID (R.MyInternationalizationString.AmendTheSuccess)); |
| | | |
| | | }); |
| | |
| | | UserMiddle.SettingPageView.PageIndex = UserMiddle.SettingPageView.ChildrenCount - 1; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 请求解绑音箱 |
| | | /// </summary> |
| | | /// <param name="speakerInfo">音箱参数</param> |
| | | /// <param name="rowView">音箱rowView</param> |
| | | void UnbindSpeaker (SpeakerInfo speakerInfo, RowLayout rowView) |
| | | { |
| | | if (speakerInfo == null || string.IsNullOrEmpty (speakerInfo.tokenId)) { |
| | | |
| | | Utlis.ShowTip (Language.StringByID (R.MyInternationalizationString.RequestFailedParameterException) + "(-3)"); |
| | | } |
| | | |
| | | MainPage.Loading.Start (Language.StringByID (R.MyInternationalizationString.load)); |
| | | |
| | | System.Threading.Tasks.Task.Run (() => { |
| | | try { |
| | | var revertObj = HttpServerRequest.Current.UnbindSpeaker (speakerInfo.tokenId); |
| | | if (revertObj.Code == StateCode.SUCCESS) { |
| | | //解绑成功 |
| | | Application.RunOnMainThread (() => { |
| | | //rowView |
| | | if (rowView != null) { |
| | | rowView.RemoveFromParent (); |
| | | } |
| | | |
| | | //提示解绑成功 |
| | | Utlis.ShowTip (Language.StringByID (R.MyInternationalizationString.UnbindSuccessfully)); |
| | | |
| | | }); |
| | | } else { |
| | | //提示错误 |
| | | IMessageCommon.Current.ShowErrorInfoAlter (revertObj.Code); |
| | | } |
| | | } catch { |
| | | |
| | | } finally { |
| | | Application.RunOnMainThread (() => { |
| | | MainPage.Loading.Hide (); |
| | | }); |
| | | } |
| | | }); |
| | | |
| | | } |
| | | |
| | | } |
| | | } |