KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I am currently trying to make a game based on the old school battleship board game using android. I am kinda just messing around at the moment trying to get a feel for it and for the components that I may need to make the game. Basically what I have at the moment in my layout xml file is the following: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" > <org.greene.battleship.BoardView android:id="@+id/board_view" android:layout_width="fill_parent" android:layout_height="fill_parent" android:clickable="true" /> <RelativeLayout android:layout_width="fill_parent" android:layout_height="fill_parent"> <org.greene.battleship.ShipView android:id="@+id/ships_view" android:layout_width="fill_parent" android:layout_height="fill_parent" android:clickable="true" /> </RelativeLayout> </RelativeLayout> I want the BoardView to only take up a certain portion of the screen i.e. the view should be size of the content that I want to create in this view. Which in this case is a 2D board. This is done by overriding the onMeasure() method from extending View. The view's width is kept the same but the height is given the same value as the width giving a perfect square. @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec){ int parent_width = MeasureSpec.getSize(widthMeasureSpec); this.setMeasuredDimension(parent_width, parent_width); Log.d("BOARD_VIEW", "BoardView.onMeasure : width = " + this.getMeasuredWidth() + ", height = " + this.getMeasuredHeight()); } I check to see if the views dimensions have changed by overriding the views onSizeChanged() function and checking the values there. </p
Tags (comma-separated)
Save Edits
Cancel