i want display 2 touchimageviews on main activity. want set width of each touchimageview half width of devices screen size. want set height of eachtouchimageview` width of devices width. have tried not getting desire result. want result below image.

i have tried below code...
mainactivity.java:
display devicedisplay = getwindowmanager().getdefaultdisplay(); point size = new point(); devicedisplay.getsize(size); int devicedisplaywidth = size.x; int devicedisplayheight = size.y; relativelayout.layoutparams params = new relativelayout.layoutparams(devicedisplaywidth / 2, devicedisplayheight); img_to_be_zoomed.setlayoutparams(params); img_to_be_zoomed_mirror.setlayoutparams(params); activity_main.xml:
<linearlayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:weightsum="4" tools:context="com.pinchzoom.pinchzoomexampletwo.mainactivity" > <linearlayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_margintop="3dp" android:layout_weight="0.5" android:gravity="center_vertical" android:orientation="horizontal" > <imageview android:id="@+id/img_back" android:layout_width="35dp" android:layout_height="35dp" android:contentdescription="@string/img_back_description" android:src="@drawable/back_icon" android:textstyle="bold" /> <textview android:id="@+id/txt_app_name" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center_horizontal" android:text="@string/txt_app_name" android:textsize="35px" android:textstyle="bold" /> <imageview android:id="@+id/img_menu" android:layout_width="35dp" android:layout_height="35dp" android:contentdescription="@string/img_menu_description" android:src="@drawable/menu_icon" /> </linearlayout> <relativelayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="3" android:background="@drawable/linear_layout_square" android:gravity="center" > <com.pinchzoom.pinchzoomexampletwo.touchimageview android:id="@+id/img_to_be_zoomed" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/img" > </com.pinchzoom.pinchzoomexampletwo.touchimageview> <com.pinchzoom.pinchzoomexampletwo.touchimageview android:id="@+id/img_to_be_zoomed_mirror" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/img" > </com.pinchzoom.pinchzoomexampletwo.touchimageview> </relativelayout> <linearlayout android:id="@+id/layout_bottom_hscrolling" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginbottom="1dp" android:layout_weight="0.5" android:gravity="bottom" android:orientation="horizontal" > <com.devsmart.android.ui.horizontallistview android:id="@+id/horizontal_list_view" android:layout_width="fill_parent" android:layout_height="40dp" android:background="#ddd" > </com.devsmart.android.ui.horizontallistview> </linearlayout> <linearlayout android:id="@+id/layout_bottom_hscrolling_first" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="0.5" android:gravity="bottom" android:orientation="horizontal" android:visibility="gone" > <com.devsmart.android.ui.horizontallistview android:id="@+id/horizontal_list_view_first" android:layout_width="fill_parent" android:layout_height="40dp" android:background="#ddd" > </com.devsmart.android.ui.horizontallistview> </linearlayout> <linearlayout android:id="@+id/layout_bottom_hscrolling_second" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="0.5" android:gravity="bottom" android:orientation="horizontal" android:visibility="gone" > <com.devsmart.android.ui.horizontallistview android:id="@+id/horizontal_list_view_second" android:layout_width="fill_parent" android:layout_height="40dp" android:background="#ddd" > </com.devsmart.android.ui.horizontallistview> </linearlayout> <linearlayout android:id="@+id/layout_bottom_hscrolling_third" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="0.5" android:gravity="bottom" android:orientation="horizontal" android:visibility="gone" > <com.devsmart.android.ui.horizontallistview android:id="@+id/horizontal_list_view_third" android:layout_width="fill_parent" android:layout_height="40dp" android:background="#ddd" > </com.devsmart.android.ui.horizontallistview> </linearlayout> <linearlayout android:id="@+id/layout_bottom_hscrolling_fourth" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="0.5" android:gravity="bottom" android:orientation="horizontal" android:visibility="gone" > <com.devsmart.android.ui.horizontallistview android:id="@+id/horizontal_list_view_fourth" android:layout_width="fill_parent" android:layout_height="40dp" android:background="#ddd" > </com.devsmart.android.ui.horizontallistview> </linearlayout> </linearlayout>
try code.. set image view width , height run time.
private void setimageview() { // adding view tree observer on image container yourlayout.getviewtreeobserver().addonpredrawlistener(new viewtreeobserver.onpredrawlistener() { @override public boolean onpredraw() { // remove predrawlistener yourlayout.getviewtreeobserver().removeonpredrawlistener(this); setimageviewparams(); return true; } }); yourimageview.getviewtreeobserver().addonpredrawlistener(new viewtreeobserver .onpredrawlistener() { @override public boolean onpredraw() { // remove predrawlistener yourimageview.getviewtreeobserver().removeonpredrawlistener(this); setimageviewparams(); return true; } }); } private void setimageviewparams() { if (yourimageview.getheight() == 0 || rootview.getheight() == 0) { return; } linearlayout.layoutparams layoutparams = (linearlayout.layoutparams) rootview.getlayoutparams(); int imageviewpostion = (rootview.getwidth()/2); linearlayout.layoutparams imageviewlayoutparams = (linear.layoutparams) yourimageview.getlayoutparams(); imageviewlayoutparams.setwidth = positonafterimagecontainer; iamgeviewlayoutparams.setheight = positonafterimagecontainer; imageviewid.setlayoutparams(imageviewlayoutparams); }
Comments
Post a Comment