android - Optimizing my App for multiple screen resolutions -
android - Optimizing my App for multiple screen resolutions -
i've finished app, , looks great on nexus 1 emulator (400x800 screen) while testing app, found out doesn't scale on larger displays. there can prepare in layout prepare scaling issues? *note, 1 of testers of app using lg g3 (2560x1440) screen, , lot of elements didn't fill screen in emulator. screenshot below, , here layout file:
<relativelayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads" android:id="@+id/rlmain" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#bbcde3" android:orientation="vertical" > <gridlayout android:id="@+id/gridlayout1" android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="#e3e3e3" android:columncount="2" android:gravity="right" android:orientation="horizontal" > <com.google.ads.adview android:id="@+id/adview" android:layout_width="wrap_content" android:layout_height="wrap_content" ads:adsize="banner" ads:adunitid="ca-app-pub-6005267993787158/4274166222" ads:loadadoncreate="true" > </com.google.ads.adview> </gridlayout> <space android:layout_width="match_parent" android:layout_height="12sp" /> <textview android:id="@+id/textview1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignleft="@+id/textview2" android:layout_below="@+id/gridlayout1" android:layout_margintop="20dp" android:text="@string/rye" android:textcolor="#888888" android:textsize="19sp" /> <ratingbar android:id="@+id/ratingbar1" style="@style/circleratingbar" android:layout_width="wrap_content" android:layout_height="47dp" android:layout_alignleft="@+id/textview1" android:layout_below="@+id/textview1" android:isindicator="false" android:numstars="5" android:stepsize="1" /> <imageview android:id="@+id/dropdownbutton" android:layout_width="48dip" android:layout_height="48dip" android:layout_alignbottom="@+id/ratingbar1" android:layout_torightof="@+id/ratingbar1" android:onclick="dropdown" android:src="@drawable/ddb" /> <relativelayout android:id="@+id/dropdownlayout" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_alignparentleft="true" android:layout_aligntop="@+id/textview2" android:visibility="gone" > <textview android:id="@+id/testtv" android:layout_width="match_parent" android:layout_height="match_parent" android:text="testing dropdown" /> </relativelayout> <textview android:id="@+id/textview2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentleft="true" android:layout_below="@+id/ratingbar1" android:layout_marginleft="14dp" android:layout_margintop="10dp" android:text="@string/tiptitle" android:textcolor="#888888" android:textsize="19sp" /> <framelayout android:id="@+id/quizfragment" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/dropdownbutton" /> <textview android:id="@+id/tiptext" android:layout_width="175dp" android:layout_height="wrap_content" android:layout_below="@+id/textview2" android:layout_marginleft="14dp" android:background="@drawable/round_corners" android:focusable="false" android:padding="2dp" android:text="10%" android:textcolor="#888888" android:textstyle="bold" /> <imagebutton android:id="@+id/greyplus" android:layout_width="25dp" android:layout_height="25dp" android:layout_below="@+id/textview2" android:layout_marginleft="10dp" android:layout_marginright="5dp" android:layout_torightof="@+id/textview1" android:background="@drawable/grey_plus" /> <imagebutton android:id="@+id/greyminus" android:layout_width="25dp" android:layout_height="25dp" android:layout_aligntop="@+id/greyplus" android:layout_torightof="@+id/greyplus" android:background="@drawable/grey_minus" /> <textview android:id="@+id/textview02" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignleft="@+id/tiptext" android:layout_below="@+id/greyplus" android:layout_margintop="10dp" android:text="@string/people_dining_title" android:textcolor="#888888" android:textsize="19sp" /> <textview android:id="@+id/textviewpeople" android:layout_width="175dp" android:layout_height="wrap_content" android:layout_alignleft="@+id/textview02" android:layout_below="@+id/textview02" android:background="@drawable/round_corners" android:focusable="false" android:padding="2dp" android:text="2" android:textcolor="#888888" android:textstyle="bold" /> <imagebutton android:id="@+id/greyplus2" android:layout_width="25dp" android:layout_height="25dp" android:layout_alignleft="@+id/greyplus" android:layout_aligntop="@+id/textviewpeople" android:background="@drawable/grey_plus" /> <imagebutton android:id="@+id/greyminus2" android:layout_width="25dp" android:layout_height="25dp" android:layout_alignleft="@+id/greyminus" android:layout_aligntop="@+id/greyplus2" android:background="@drawable/grey_minus" /> <textview android:id="@+id/subtotaltitle" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignleft="@+id/textviewpeople" android:layout_below="@+id/greyplus2" android:layout_margintop="10dp" android:text="@string/subtotal" android:textcolor="#888888" android:textsize="19sp" /> <textview android:id="@+id/totaltitle" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignleft="@+id/subtotaltext" android:layout_below="@+id/subtotaltext" android:layout_margintop="10dp" android:text="@string/total" android:textcolor="#888888" android:textsize="19sp" /> <textview android:id="@+id/totaltext" android:layout_width="175dp" android:layout_height="wrap_content" android:layout_alignleft="@+id/totaltitle" android:layout_alignright="@+id/subtotaltext" android:layout_below="@+id/totaltitle" android:background="@drawable/round_corners_blue" android:focusable="false" android:padding="2dp" android:text="total" android:textcolor="#ffffff" /> <edittext android:id="@+id/subtotaltext" android:layout_width="175dp" android:layout_height="wrap_content" android:layout_alignleft="@+id/subtotaltitle" android:layout_alignright="@+id/greyminus2" android:layout_below="@+id/subtotaltitle" android:background="@drawable/round_corners" android:ems="10" android:hint="subtotal" android:inputtype="numberdecimal" android:padding="2dp" android:textcolor="#888888" android:textstyle="bold" > </edittext> <textview android:id="@+id/epptitle" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignleft="@+id/totaltext" android:layout_below="@+id/totaltext" android:layout_margintop="10dp" android:text="@string/epp" android:textcolor="#888888" android:textsize="19sp" /> <textview android:id="@+id/epptext" android:layout_width="175dp" android:layout_height="wrap_content" android:layout_alignleft="@+id/epptitle" android:layout_alignright="@+id/totaltext" android:layout_below="@+id/epptitle" android:background="@drawable/round_corners_blue" android:focusable="false" android:padding="2dp" android:text="" android:textcolor="#ffffff" /> <button android:id="@+id/buttondone" android:layout_width="fill_parent" android:layout_height="50dp" android:layout_below="@+id/epptext" android:layout_centerhorizontal="true" android:layout_margintop="10dp" android:background="#3fa9f5" android:fontfamily="helvetica" android:onclick="done" android:text="@string/done" android:textcolor="#ffffff" android:textsize="14sp" android:textstyle="bold" /> <imageview android:id="@+id/settingsbutton" android:layout_width="40dp" android:layout_height="40dp" android:layout_alignbottom="@+id/buttondone" android:layout_alignparentright="true" android:layout_aligntop="@+id/buttondone" android:layout_torightof="@+id/epptext" android:onclick="opensettings" android:src="@drawable/smallgear" /> </relativelayout>
you can provide alternative layouts creating same file in layout folder, e.g. layout-sw600dp screen smallest width of 600dp. can preview how it'll using android studio's preview screen.
check out android's training more help
android android-layout
Comments
Post a Comment