android - TextView and RelativeLayout onMeasure called a lot -
i'm using traceview in attempts optimize code. noticed textview.onmeasure() , relativelayout.onmeasure() gets called lot, , i'm trying see if there way can optimize this. in listadapter, i'm using viewholders, checking if currentview null suggested various google talks/romain guy. here screenshot of costly functions in traceview.
below code layout in list, prove it's not crazy complicated.
<relativelayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="178dp" android:background="@color/transparent" android:clickable="true" > <relativelayout android:id="@+id/holder" android:layout_width="147dp" android:layout_height="178dp" android:layout_centerinparent="true" android:background="@color/transparent" > <imageview android:id="@+id/usericon" android:layout_width="141dp" android:layout_height="141dp" android:layout_alignparenttop="true" android:layout_centerhorizontal="true" android:layout_margintop="1dp" android:background="@color/transparent" /> <relativelayout android:id="@+id/userinfosection" android:layout_width="143dp" android:layout_height="35dp" android:layout_below="@id/usericon" android:layout_centerhorizontal="true" android:background="@color/black" > <button android:id="@+id/menubutton" android:layout_width="31dp" android:layout_height="25dp" android:layout_alignparentright="true" android:scaletype="fitcenter" android:src="@drawable/btn_menu" /> <textview android:id="@+id/name" android:layout_width="100dp" android:layout_height="17dp" android:layout_alignparenttop="true" android:layout_alignparentleft="true" android:layout_marginleft="3dp" android:layout_toleftof="@id/menubutton" android:singleline="true" android:ellipsize="end"/> <textview android:id="@+id/age" android:layout_width="39dp" android:layout_height="14dp" android:layout_below="@id/name" android:layout_marginright="20dp" android:layout_toleftof="@id/menubutton" android:singleline="true" android:ellipsize="end" style="@style/text.default" /> <textview android:id="@+id/location" android:layout_width="30dp" android:layout_height="14dp" android:layout_below="@id/name" android:layout_alignparentleft="true" android:layout_marginleft="3dp" android:layout_toleftof="@id/price" android:singleline="true" android:ellipsize="end" style="@style/text.default" /> </relativelayout> </relativelayout> <imageview android:id="@+id/loading_indicator" android:contentdescription="@string/imageview_caption_loading" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparenttop="true" android:layout_marginleft="115dp" android:layout_margintop="5dp" android:src="@drawable/loading_indicator" android:visibility="gone" /> </relativelayout> any appreciated, thanks.
try use linearlayout or framelayout more efficient relativelayout. in same time, puzzled textview
Comments
Post a Comment