Solution suggestion using LinearLayout. Not very good :(
Added a sample of the layout strategy I will use, but with a manual measure. Now that I know it works, I can implement the actual measure function.
Implemented a custom GridLayout that is able to scale children depending on rowSpan. By default they all have the same height and width, but increasing rowSpan will allow them to occupy multiple columns.
Removed empty test suite generated by Android Studio.
Added clock layout and update loop that refreshes according to device time.
Added the foundations of a sound recorder app. Currently only wirht 2 buttons and overriding same file everytime you record
Buttons now have a basic click handler that posts toast messages to the screen.
The main activity now has a ListView showing existing recordings. This is mostly to test playback - it should probably be in a different fragment.
Made a custom list item to show more useful meta-data about recordings than filenames. Currently supports duration, timestamp and file-size.
Recorder nolonger overwrites existing recording, instead it creates new files with unix timestamps as name.
Changed hour-format on timestamp to 24-hour format - because we all know it is superior..
Added Balsamiq mockup suggestions for 4 and 5 inch devices
Moved Recording related code into separate class called "Recorder". Activity can now be focused on controlling UI and responding appropriately to errors.
Added a bunch of comments here and there.
Buttons are now pushed down on a single horizontal layout to make space for a new elapsed counter and label.
Combined 'Record' and 'Stop recording' into a single button which swaps functionality depending on recodring state
Items can now be selected and selection will be reset when starting a recording
Recorder class can now publish elapsed time , if an event handler is set to listen for such events.
SoundRecorderActivity now subscribes to the new elapsed event of Recorder and updates the view accordingly.
Adjusted a few comments