public async void deleteCard(int index) { UserTrackingReporter.TrackUser(Constant.CATEGORY_PAYMENT, "Deleting card"); GetCreditCardDetailsNewForPhoneResponseItem card = mCardList [index]; var dic = new Dictionary <String, String> { { Constant.DELETECREDITCARDNEW_CUSTOMERID, AppSettings.UserID }, { Constant.DELETECREDITCARDNEW_INFOID, card.Id }, { Constant.DELETECREDITCARDNEW_LOGINTYPE, AppSettings.LoginType.ToString() }, { Constant.DELETECREDITCARDNEW_TOKENID, AppSettings.UserToken } }; try { var result = await AppData.ApiCall(Constant.DELETECREDITCARDNEW, dic); var deleteCardResponse = (DeleteCreditCardNewResponse)AppData.ParseResponse(Constant.DELETECREDITCARDNEW, result); mSuperActivity.ShowMessageBox(deleteCardResponse.Result, deleteCardResponse.Message); mCardList.RemoveAt(index); CreditCardAdapter adapter = (CreditCardAdapter)mDrawerList.Adapter; adapter.RemoveCard(index); } catch (Exception ex) { mSuperActivity.ShowMessageBox("Exception:", ex.Message); CrashReporter.Report(ex); return; } }
public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { var view = inflater.Inflate(Resource.Layout.fragment_paymentInfo, container, false); mDrawerList = (ListView)view.FindViewById(Resource.Id.creditCardList); mDrawerList.ItemLongClick += LongClickForDelete; var dic = new Dictionary <String, String> { { Constant.GETCREDITCARDDETAILSNEWFORPHONE_CUSTOMERID, AppSettings.UserID }, { Constant.GETCREDITCARDDETAILSNEWFORPHONE_LOGINTYPE, "-1" }, { Constant.GETCREDITCARDDETAILSNEWFORPHONE_TOKENID, string.Empty } // do not use the actual token }; String result = String.Empty; mSuperActivity = this.Activity as MainActivity; mSuperActivity.ShowLoadingView("Loading..."); Task runSync = Task.Factory.StartNew(async() => { result = await AppData.ApiCall(Constant.GETCREDITCARDDETAILSNEWFORPHONE, dic); var response = (GetCreditCardDetailsNewForPhoneResponse)AppData.ParseResponse(Constant.GETCREDITCARDDETAILSNEWFORPHONE, result); mCardList = response.CardList; var adapter = new CreditCardAdapter(this.Activity, response, mSuperActivity); this.Activity.RunOnUiThread(() => { mDrawerList.Adapter = adapter; adapter.NotifyDataSetChanged(); mSuperActivity.HideLoadingView(); }); }).Unwrap(); return(view); }