protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); SetContentView(Resource.Layout.list_of_rooms); #region Висувний список та Action Bar mToolBar = FindViewById <SupportToolbar>(Resource.Id.toolBar); SetSupportActionBar(mToolBar); mActionBar = SupportActionBar; mActionBar.SetHomeAsUpIndicator(Resource.Drawable.ic_menu); mActionBar.SetHomeButtonEnabled(true); mActionBar.SetDisplayHomeAsUpEnabled(true); mDrawerLayout = FindViewById <DrawerLayout>(Resource.Id.drawer_layout); mNavigationView = FindViewById <NavigationView>(Resource.Id.nav_view); if (mNavigationView != null) { SetUpDrawerContent(mNavigationView); } #endregion FloatingActionButton fab = FindViewById <FloatingActionButton>(Resource.Id.fab); //fab.BackgroundTintList = ColorStateList.ValueOf(Android.Graphics.Color.LightCyan); fab.Click += Fab_Click; try { RoomDatabaseManagement roomDatabaseManagement = new RoomDatabaseManagement(); roomDatabaseManagement.FindRightOrderOfRoomTitles(this); roomIds = roomDatabaseManagement.GetRoomIds(); roomTitles = roomDatabaseManagement.GetRoomTitles(); timeOfRoomCleaning = new string[roomTitles.Length]; roomCleanness = new string[roomTitles.Length]; RoomDatabaseManagement roomDatabaseManagement2 = new RoomDatabaseManagement(); roomDatabaseManagement2.CalculateRoomCleannessAndTimeOfRoomCleaning(this); timeOfRoomCleaningInteger = roomDatabaseManagement2.GetTimeOfRoomCleaning(); roomCleannessInteger = roomDatabaseManagement2.GetRoomCleanness(); for (int i = 0; i < timeOfRoomCleaning.Length; i++) { timeOfRoomCleaning[i] = timeOfRoomCleaningInteger[i].ToString() + " " + GetString(Resource.String.minute_text); roomCleanness[i] = roomCleannessInteger[i].ToString() + "%"; } listOfRoomsRecycler = FindViewById <Android.Support.V7.Widget.RecyclerView>(Resource.Id.list_of_rooms_recycler); RoomInListAdapter adapter = new RoomInListAdapter(roomTitles, timeOfRoomCleaning, roomCleanness); adapter.ItemClick += OnItemClick; listOfRoomsRecycler.SetAdapter(adapter); LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this); listOfRoomsRecycler.SetLayoutManager(linearLayoutManager); listOfRoomsRecycler.NestedScrollingEnabled = false; } catch (Exception) { } }
private bool isTaskTitleChanged = false; //Це поле знадобиться тоді, коли буде йти опрацювання OnSavedInstanceState protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); SetContentView(Resource.Layout.create_cleaning_task); View view1 = FindViewById <View>(Resource.Id.line_view1); view1.SetBackgroundColor(new Android.Graphics.Color(224, 224, 224)); View view2 = FindViewById <View>(Resource.Id.line_view2); view2.SetBackgroundColor(new Android.Graphics.Color(224, 224, 224)); View view3 = FindViewById <View>(Resource.Id.line_view3); view3.SetBackgroundColor(new Android.Graphics.Color(224, 224, 224)); View view4 = FindViewById <View>(Resource.Id.line_view4); view4.SetBackgroundColor(new Android.Graphics.Color(224, 224, 224)); View view5 = FindViewById <View>(Resource.Id.line_view5); view5.SetBackgroundColor(new Android.Graphics.Color(224, 224, 224)); timeTextView = FindViewById <TextView>(Resource.Id.time_textview); dateTextView = FindViewById <TextView>(Resource.Id.date_textview); timeTextView.Click += TimeTextView_Click; dateTextView.Click += DateTextView_Click; taskRecycler = FindViewById <Android.Support.V7.Widget.RecyclerView>(Resource.Id.task_reсycler); roomSpinner = FindViewById <Spinner>(Resource.Id.room_spinner); periodicityEditText = FindViewById <EditText>(Resource.Id.periodicity_edit_text); periodicityEditText.Text = periodicity.ToString(); timeOfCleaningEditText = FindViewById <EditText>(Resource.Id.time_of_cleaning_edit_text); timeOfCleaningEditText.Text = timeOfCleaning.ToString(); roomId = Intent.GetIntExtra(IntentManagement.IntentManagement.ROOM_ID, -1); taskId = Intent.GetIntExtra(RoomManagement.TASK_ID, -2); //-2 за дефолтом присвоюємо тому, що -1 уже забито під ще не створену задачу. коли вилізе -2 ми відразу побачимо помилку captions = new string[1]; imagesId = new int[1]; descriptions = new string[1]; descriptions[0] = GetString(Resource.String.click_to_edit_text); RoomDatabaseManagement roomDatabaseManagement = new RoomDatabaseManagement(); roomDatabaseManagement.FindRightOrderOfRoomTitles(this); roomIds = roomDatabaseManagement.GetRoomIds(); roomTitles = roomDatabaseManagement.GetRoomTitles(); //roomImageIds = roomDatabaseManagement.GetRoomImageIds(); roomSpinner.ItemSelected += RoomSpinner_ItemSelected; if (taskId == -1) //taskId == -1 означає (якщо це true), що задача ще не створена { if (roomId == -1) //Коли ми створюємо задачу переходячи до створення із головної сторінки (наприклад), а не з активності конкретної кімнати { var spinnerAdapter = new ArrayAdapter <string>(this, Android.Resource.Layout.SimpleSpinnerDropDownItem, roomTitles); roomSpinner.Adapter = spinnerAdapter; roomId = roomIds[0]; } else { var spinnerAdapter = new ArrayAdapter <string>(this, Android.Resource.Layout.SimpleSpinnerDropDownItem, roomTitles); roomSpinner.Adapter = spinnerAdapter; int spinnerCounter = 0; for (int i = 0; i < roomTitles.Length; i++) { if (roomId == roomIds[i]) { spinnerCounter = i; break; } } roomSpinner.SetSelection(spinnerCounter); } imagesId[0] = DatabaseManagement.RoomDatabaseManagement.GetRoomImageId(this, roomId); countOfCleaningTask = DatabaseManagement.CleaningTaskDatabaseManagement.CountOfCleaningTask(this, roomId); taskTitle = GetString(Resource.String.task_title) + (countOfCleaningTask + 1).ToString(); captions[0] = taskTitle; } else { var spinnerAdapter = new ArrayAdapter <string>(this, Android.Resource.Layout.SimpleSpinnerDropDownItem, roomTitles); roomSpinner.Adapter = spinnerAdapter; int spinnerCounter = 0; for (int i = 0; i < roomTitles.Length; i++) { if (roomId == roomIds[i]) { spinnerCounter = i; break; } } roomSpinner.SetSelection(spinnerCounter); SQLiteOpenHelper rationalCleaningDatabaseHelper = new RationalCleaningDatabaseHelper(this); db = rationalCleaningDatabaseHelper.ReadableDatabase; taskCursor = db.Query("CLEANING_TASK_TABLE", new string[] { "TITLE", "YEAR", "MONTH", "DAY_OF_MONTH", "DATE_DEFAULT", "HOUR", "MINUTE", "PERIODICITY", "TIME_OF_CLEANING" }, "_id = ?", new string[] { taskId.ToString() }, null, null, null); if (taskCursor.MoveToFirst()) { taskTitle = taskCursor.GetString(0); year = taskCursor.GetInt(1); month = taskCursor.GetInt(2); dayOfMonth = taskCursor.GetInt(3); dateDefault = taskCursor.GetInt(4); hour = taskCursor.GetInt(5); minute = taskCursor.GetInt(6); periodicity = taskCursor.GetInt(7); timeOfCleaning = taskCursor.GetInt(8); dateDefaultOriginal = dateDefault; } taskCursor.Close(); db.Close(); captions[0] = taskTitle; if (hour != -1) { TimeToFormat(hour, minute); } if (dateDefault == 0) { DateToFormat(year, month, dayOfMonth); } periodicityEditText.Text = periodicity.ToString(); timeOfCleaningEditText.Text = timeOfCleaning.ToString(); imagesId[0] = DatabaseManagement.RoomDatabaseManagement.GetRoomImageId(this, roomId); } #region Висувний список та Action Bar mToolBar = FindViewById <SupportToolbar>(Resource.Id.toolBar); SetSupportActionBar(mToolBar); mActionBar = SupportActionBar; mActionBar.SetHomeAsUpIndicator(Resource.Drawable.ic_menu); mActionBar.SetHomeButtonEnabled(true); mActionBar.SetDisplayHomeAsUpEnabled(true); mDrawerLayout = FindViewById <DrawerLayout>(Resource.Id.drawer_layout); mNavigationView = FindViewById <NavigationView>(Resource.Id.nav_view); if (mNavigationView != null) { SetUpDrawerContent(mNavigationView); } #endregion UpdateCaptionedImagesAdapter(); LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this); taskRecycler.SetLayoutManager(linearLayoutManager); taskRecycler.NestedScrollingEnabled = false; saveButton = FindViewById <Button>(Resource.Id.save_button); saveButton.Click += SaveButton_Click; }