public void Export(string userName) { var dialog = this.ShowProgress(); var connectionInfo = ((ConnectivityManager)GetSystemService(ConnectivityService)).ActiveNetworkInfo; if (connectionInfo != null && connectionInfo.IsConnected) { var deviceId = Android.Provider.Settings.Secure.GetString(ContentResolver, Android.Provider.Settings.Secure.AndroidId); Task.Run(() => _accountService.TryExport(deviceId, userName)).ContinueWith(r => { dialog.Dismiss(); _listView.CloseOpenedItems(); if (r.Result) { var destUrl = Path.Combine(AppSettings.ApiEndpoint, $"{deviceId}_{userName}"); this.ShowImageAlert(userName.ToFullName(), GetQRCode(destUrl), AndroidLocalizator.Translate(Resource.String.MESSAGE_SCAN_CODE)); } else { this.ShowError(AndroidLocalizator.Translate(Resource.String.MESSAGE_LOAD_ERROR)); } }, TaskScheduler.FromCurrentSynchronizationContext()); } else { this.ShowError(AndroidLocalizator.Translate(Resource.String.MESSAGE_CHECK_CONNECTION)); } }
private async void Import() { var connectionInfo = ((ConnectivityManager)GetSystemService(ConnectivityService)).ActiveNetworkInfo; if (connectionInfo != null && connectionInfo.IsConnected) { var scanner = new MobileBarcodeScanner(); var result = await scanner.Scan(); if (result != null) { var dialog = this.ShowProgress(); await Task.Run(() => _accountService.TryImport(result.Text)).ContinueWith(r => { dialog.Dismiss(); if (r.Result) { _accounts = _accountService.GetAll().ToCT1ItemList(); (_listView.Adapter as CT1ActionAdapter).Update(_accounts); } else { this.ShowError(AndroidLocalizator.Translate(Resource.String.MESSAGE_IMPORT_ERROR)); } }, TaskScheduler.FromCurrentSynchronizationContext()); } } else { this.ShowError(AndroidLocalizator.Translate(Resource.String.MESSAGE_CHECK_CONNECTION)); } }
public override View GetView(int position, View convertView, ViewGroup parent) { var item = items[position]; View view = convertView; if (view == null) // no view to re-use, create new { view = context.LayoutInflater.Inflate(Resource.Layout.CT1Text, null); } view.FindViewById <TextView>(Resource.Id.txtName).Text = AndroidLocalizator.Translate($"CLOTHES_{item.Name.ToUpper ().Replace ("-", "_")}"); var txtSize = view.FindViewById <EditText>(Resource.Id.txtSize); txtSize.Text = item.Text; txtSize.Enabled = _isEditMode; var bgRes = _isEditMode ? Resource.Drawable.back_bordered : Android.Resource.Color.Transparent; txtSize.SetBackgroundResource(bgRes); txtSize.FocusChange += (s, e) => { items [position].Text = txtSize.Text; }; view.FindViewById <TextView>(Resource.Id.txtTypeId).Text = item.Id; int resID = (int)typeof(Resource.Drawable).GetField(item.ImageLogo.Replace(".png", "")).GetValue(null); view.FindViewById <ImageView>(Resource.Id.imgLogo).SetImageResource(resID); return(view); }
public override bool OnOptionsItemSelected(IMenuItem item) { if (item.ToString().Equals(AndroidLocalizator.Translate(Resource.String.edit))) { var intent = new Intent(this, typeof(CalculationActivity)); intent.PutExtra(Constants.IS_EDIT, true); StartActivity(intent); } //Toast.MakeText(this, "Action selected: " + item.TitleFormatted, // ToastLength.Short).Show(); return(base.OnOptionsItemSelected(item)); }
public override bool OnOptionsItemSelected(IMenuItem item) { if (item.ToString().Equals(Constants.ADD_ACTION)) { if (_accounts.Count < AppSettings.AllowedAccounts) { this.ShowTwoButtonAlert(AndroidLocalizator.Translate(Resource.String.add_account), Resource.String.import_account, Resource.String.new_account, () => Import(), () => New()); } else { this.ShowInfo(AndroidLocalizator.Translate(Resource.String.MESSAGE_ACCOUNT_LIMIT)); } } //Toast.MakeText(this, "Action selected: " + item.TitleFormatted, // ToastLength.Short).Show(); return(base.OnOptionsItemSelected(item)); }
public override bool OnOptionsItemSelected(IMenuItem item) { if (item.ToString().Equals(AndroidLocalizator.Translate(Resource.String.edit))) { item.SetTitle(Resource.String.save); item.SetIcon(Resource.Mipmap.save); (_listView.Adapter as CT1TextAdapter).Refresh(); var firstItem = _listView.GetChildAt(_listView.FirstVisiblePosition).FindViewById <EditText> (Resource.Id.txtSize); firstItem.RequestFocus(); var imm = (InputMethodManager)GetSystemService(InputMethodService); imm.ShowSoftInput(firstItem, ShowFlags.Implicit); } else if (item.ToString().Equals(AndroidLocalizator.Translate(Resource.String.save))) { _listView.RequestFocus(); CT1Item ct1Item; var updateList = new List <ClothesItem> (); for (int i = 0; i < _listView.Count; i++) { ct1Item = _listView.GetItemAtPosition(i).Cast <CT1Item>(); updateList.Add(new ClothesItem(ct1Item.Id, string.Empty, string.Empty, ct1Item.Text)); } if (Validator.ValidateClothesTypes(updateList)) { _clothesService.Update(updateList); item.SetTitle(Resource.String.edit); item.SetIcon(Resource.Mipmap.edit); (_listView.Adapter as CT1TextAdapter).Refresh(); } else { this.ShowError(AndroidLocalizator.Translate(Constants.MESSAGE_UNEXISTING_SIZE)); } } //Toast.MakeText(this, "Action selected: " + item.TitleFormatted, // ToastLength.Short).Show(); return(base.OnOptionsItemSelected(item)); }
private void InitListeners() { var metrics = Resources.DisplayMetrics; float coef = (float)Resources.GetString(Resource.String.delete_percent).ToInt32() / 100; var offset = (float)(metrics.WidthPixels - coef * metrics.WidthPixels); _listView.SetOffsetLeft(offset); _listView.FrontViewClicked += HandleFrontViewClicked; _listView.BackViewClicked += HandleBackViewClicked; _listView.ListDataSetChanged += (s, e) => { ((SwipeListView)s).CloseOpenedItems(); }; var sb = FindViewById <SearchView>(Resource.Id.searchView); sb.QueryTextChange += (s, e) => { string text = e.NewText.ToLower(); _filteredAccounts = _accounts.Where(ac => ac.Name.ToLower().Contains(text)).ToList(); (_listView.Adapter as CT1Adapter).Update(_filteredAccounts); }; sb.SetQueryHint(AndroidLocalizator.Translate(Resource.String.search_text)); var toolbar = FindViewById <Toolbar>(Resource.Id.toolbar); toolbar.SetNavigationIcon(Resource.Mipmap.clear); SetActionBar(toolbar); toolbar.NavigationOnClick += (s, e) => Close(s, e); var title = (TextView)toolbar.FindViewById(Resource.Id.toolbar_title); title.SetText(Resource.String.account_title); }
private void HandleBackViewClicked(object sender, SwipeListViewClickedEventArgs e) { this.ShowOkCancelAlert(AndroidLocalizator.Translate(Constants.TITLE_DELETE), AndroidLocalizator.Translate(Constants.MESSAGE_DELETE), () => DeleteAccount(e.Position)); }