At least I can help you with the "Button" Problem: The magic attribute you missed is android:orientation
Without this attribute android take android:orientation="horizontal"
as set. That means that every view is lined up on the horizontal line, so right of your button is your grid, which cant be displayed because your LinearLayout in which you have your button has layout_width="fill_parent"
One last tip: less is more, if you have only one view inside a layout, remove the layout and just place the view. (if you only want to have one button in your LinearLayout)