ramack / ActivityDiary

Android diary for any kind of activities
GNU General Public License v3.0
73 stars 37 forks source link

Add Calendar View to Diary #32

Open ramack opened 7 years ago

ramack commented 7 years ago

It might be a good idea to show the diary history in a calendar with day week and month views.

ramack commented 6 years ago

maybe like the timer tracker? https://github.com/sobrinojulian/ATimeTracker

XilinJia commented 6 years ago

This should be a very important feature. Think about someone having done the diary for quite some time (a few months, or a couple of years), and he would like to know what he has done in some time period in the past. The current list view would be very cumbersome for that.

I would be very happy looking into it. But I have my weakness: though I had some extensive experiences in Java in the past, I have not programmed Java in many years (I see your code is in Java so I need some time to pick it up), I have never programmed for Android, and I only program in Linux (I hope it's not an impasse for programming the Android).

So if you don't mind, I would appreciate your guidance. First, please let me know which part of your code I should look into first.

ramack commented 6 years ago

That is great. Welcome in the team. I myself programmed Java 20 years ago before university and really restarted it end of 2017 for this app. I think the harder part will be more to get used to some Android specific things over the pure Java language stuff...

I am happy to guide you.

First I recommend to get a visual idea of what you want to reach. I usually draw a piece of th UI with pen and paper, often several different variants, with real examples. So try to imagine a week view: what should be there? Do we need to hide some things? (Night e.g.? )

Then you can check whether it fits into an existing view (activity in Android language - you might want to read some tutorial about android development and some of the 'official' docs) or a new one should be created and if so how it should get started. (This part is usually the part you start with, because you need something to try and see.)

Then - or in parallel - you start to get used to the data model. What is stored and how? - Here the wiki could help, but I see it is horribly outdated. So push me to work on that.

Another thing is to get the development environment setup. Install AndroidStudio and git, fork the project on github and do a few code changes on your fork. Maybe you find a typo or something to submit a first PR, to get used to the process...

Is this a start? Do you want more or less details?

ramack commented 6 years ago

BTW, I updated the wiki for what the app stores in the database. So the main content for the calendar view should come from the table diary. You can check out HistoryActivity, to see how a loader can be used to query the content provider. Using the data in onLoadFinished will be quite different for a calendar view I guess... It might also help the see another open source app that uses a similar view to get some ideas where to start.