public ArrayList readRec(String date) { ArrayList tag = new ArrayList(); ArrayList details = new ArrayList(); ArrayList descArray = new ArrayList(); ArrayList id = new ArrayList(); ArrayList ret = new ArrayList(); TagProvider tp = new TagProvider(); var li = dbConnection.Query <Item>("select * from Item where date = '" + date + "'"); if (li.Count != 0) { foreach (Item i in li) { tag.Add(tp.getContentByID(i.tagDesc)); details.Add(i.time + " | " + i.amount); descArray.Add(i.desc); id.Add(i.id); } ret.Add(tag); ret.Add(details); ret.Add(descArray); ret.Add(id); } return(ret); }
private void tagClickedFunc(Object sender, EventArgs e) { TagProvider tp = new TagProvider(); Dictionary <string, string> d = tp.getAllTag(); int tagCount = tp.getNum(); var tagGroup = new List <IconDescBind>(); foreach (string key in d.Keys) { tagGroup.Add(new IconDescBind { path = key, tagDesc = d[key] }); } DataTemplate dt = new DataTemplate(() => { var icon = new Image() { HorizontalOptions = LayoutOptions.End }; var tagDescLable = new Label() { HorizontalTextAlignment = TextAlignment.Center }; //var space = new Label() { Text = " " }; icon.SetBinding(Image.SourceProperty, "path"); tagDescLable.SetBinding(Label.TextProperty, "tagDesc"); StackLayout sl = new StackLayout() { Orientation = StackOrientation.Horizontal, HorizontalOptions = LayoutOptions.Center, Children = { icon, tagDescLable, } }; return(new ViewCell { View = sl }); }); CircleListView clv = new CircleListView { ItemsSource = tagGroup, ItemTemplate = dt, HorizontalOptions = LayoutOptions.Center, }; clv.ItemTapped += TagTapped; cp = new CirclePage() { Content = clv }; //np.PushAsync(cp); Navigation.PushModalAsync(cp); }
public ArrayList readRec(String date) { String x = "";//Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData); //处理文件不存在的异常 ArrayList tag = new ArrayList(); ArrayList al = new ArrayList(); ArrayList descArray = new ArrayList(); if (!File.Exists(x + date + ".txt")) { return(al); } StreamReader s = new StreamReader(x + date + ".txt", Encoding.UTF8); string nextLine, time = "", desc = "", tagPic = ""; int i = 0; TagProvider tp = new TagProvider(); while ((nextLine = s.ReadLine()) != null) { if (i % 4 == 0)//time { time = nextLine; i++; } else if (i % 4 == 1)//tag { tagPic = tp.getContentByID(nextLine); i++; } else if (i % 4 == 2)//desc { desc = nextLine; i++; } else { tag.Add(tagPic); al.Add(time + " | " + nextLine); descArray.Add(desc); i = 0; } } s.Close(); ArrayList ret = new ArrayList(); ret.Add(tag); ret.Add(al); ret.Add(descArray); return(ret); }
public Dictionary <string, double> readWeeklyTagAmount(int year, int weekNum) { TagProvider tp = new TagProvider(); Dictionary <string, string> tags = tp.getAllTag(); Dictionary <string, double> ret = new Dictionary <string, double>(); //initialize the return dict foreach (var item in tags) { ret.Add(item.Value, 0); } //calculate by date DateTime Jan1 = new DateTime(year, 1, 1); DateTime firstWeekDay = Jan1.AddDays(7 - (int)Jan1.DayOfWeek + 1); DateTime weekStart = firstWeekDay.AddDays((weekNum - 1) * 7); //Toast.DisplayText(weekStart.ToString("yyyy-MM-dd")); for (int i = 0; i < 7; i++) { //DateTime weekStart = weekStartX; string qDate = weekStart.ToString("yyyy-MM-dd"); var qRes = dbConnection.Query <Item>("select * from Item where date = '" + qDate + "'"); if (qRes.Count != 0) { foreach (Item it in qRes) { double adder; if (it.amount.Contains("+")) { adder = Convert.ToDouble(it.amount.Substring(1)); } else { adder = Convert.ToDouble(it.amount); } //Toast.DisplayText(adder.ToString()); ret[tags[it.tagDesc]] += adder; //Toast.DisplayText(ret[tags[it.tagDesc]].ToString()); } } weekStart = weekStart.AddDays(1); } //Toast.DisplayText(ret["电子产品"].ToString()); return(ret); }