Thursday, February 11, 2016

StatMan V

                                   

GitHub


This will be quick because I mainly just added a Navigation Drawer and I covered most of that in Choices. The only difference is that I wanted my drawer under the Toolbar in this app. Based on past experiences, I thought this would be kind of a pain, but it was just a matter of changing how I nested views in xml.

I did run into a bug that was quite annoying. The first time I launched the app after adding the Navigation Drawer, my images were all distorted.



I narrowed the problem down to Android Support Design Library. I couldn't figure out what was wrong, I was thinking it had to be something in my ImageHelper class, but it was pretty hard to search for a solution. You know, the word image, no matter what the context, generally brings up actual images, not SO posts about problems with images. I was half way into my own SO post when I remembered that Picasso exists. I thought that would be a fix because it eliminates the need for my helper class, but I had the same results.

I actually still don't know exactly what caused the problem. When I was going to make that post, I decided to change all the pictures in the app to a goofy one of myself. To my surprise, the images did not change when I reopened the app. So I cleared the app's data, and that ended up fixing the larger distortion issue. I also noticed that when I used picasso, it drawer animations were a lot smoother than they had been with my helper class(I guess it needs some work), so I kept it in my app.

Now I've got some actual coding to do. I'm planning on using a couple different fragments in my navigation drawer, so my main concern right now is getting those fragments to interact with each other, and with my main activity.

Choices II

GitHub

I spent a lot of time this week getting my hands dirty with Material design. It's what I'll be sticking to for the foreseeable future, unless I have a very specific idea. So, I'm probably not going to go nuts about the exact spacing of my icons, but I at least want to be able to work with Navigation Drawers and Floating Action Buttons. I had looked into it a bit before, but the source material was a little older, and I wanted to use the Android Design Support Library.

These situations come up quite a bit. There's something cool that I'd like to implement in my app, and I of course have no idea(These day's I usually have some idea. And my experience is making it much easier to use the resources I do find) how to do it. So I run to Google, grab everything I can find on a given subject--guides, tutorials, overviews, videos--and I go through them piece by piece. Then I do my best to take what I learned and put it into my own apps. I found some great resources: 

http://www.sitepoint.com/material-design-android-design-support-library/

http://frogermcs.github.io/instamaterial-meets-design-support-library/

http://android-developers.blogspot.com/2015/05/android-design-support-library.html

https://medium.com/ribot-labs/exploring-the-new-android-design-support-library-b7cda56d2c32#.s3lmwmpce

https://www.youtube.com/watch?v=5b6AGSh4dVE

After upgrading Android Studio, I found that there are some pretty decent templates for Navigation Drawers that are really easy to use. But because I had already started Choices, I decided to put it together myself with the Design Support Library. The Library makes it all straight forward, and I was able to add it pretty easily to what I had done so far.


                             


                            



I love the way the drawer looks and the Toolbar's not bad, but I need a new plus icon. Besides those things I need to completely rethink how I want this to look.  It's way too much blue at the moment, and I think I'm going to ditch the buttons.

I've noticed that most of my concerns around this app are superficial. This app still doesn't really do anything yet. I think my focus is appropriate though. Because it is a really simple idea, that anyone could do, and that probably has been made many times before, presentation is important. If I can translate this simple idea into an app that looks good, that runs smoothly, and that's easy to use, I may actually publish it, and someone might actually download it.