android - How to square a custom view when layout_height and layout_width are set to have different magnitudes? -


as per understanding when user specifies views height/width in pixels/dp, view receives spec mode. spec mode means view must use size. suppose want make sure view remains square. how can achieved if user sets different values layout_height , layout_width.

override onmeasure custom view, determine smallest dimension is, , set both width , height minimum dimension.

something like:

@override protected void onmeasure(int widthmeasurespec, int heightmeasurespec) {     super.onmeasure(widthmeasurespec, heightmeasurespec);     int specwidth = measurespec.getsize(widthmeasurespec);     int specheight = measurespec.getsize(heightmeasurespec);     int lesserdimension = (specwidth > specheight)?specheight:specwidth;     setmeasureddimension(lesserdimension, lesserdimension); } 

Comments

Popular posts from this blog

Android : Making Listview full screen -

javascript - Parse JSON from the body of the POST -

javascript - Chrome Extension: Interacting with iframe embedded within popup -