Skip to main content

Deal with different screen sizes in android

Deal with different screen sizes
Android having capability to deal with different device screen size but we have to follow below rules for that 1) Ensure your layout can be adequately resized to fit the screen. 2) Providing appropriate UI layout according to screen configuration. 3) Ensuring the correct layout is applied to the correct screen. 4) Providing bitmaps that’s scale correctly.
ü  Use wrap content and match parent for flexible and adapts to different screen sizes.
By using wrap content and match parent we can achieve adaptive UI for multiple devices instead of hard coded values.
ü  Use relative layout, which is allows you to specify in terms of the special relation between components.
ü  Use size qualifiers, relative, adaptive & stretch UI is not enough in android in some cases we need to show different UI for different screen sizes like device require single pane and tablet require double pane UI in that case we have use for device is layout and tablet for layout-large.
ü  Use smallest width qualifier, in android had difficulty for developers before 3.2 for large screen size bin. Some applications wants to show different layout for 5 and 7 inches devices but it is categorized in large screen but now we can write smallest width qualifier using sw600dp.
ü  Use layout aliases, the smallest width qualifier is available on 3.2 and above, Therefore we still we have to use abstract size qualifier bin like small, normal, large and x-large. Suppose if we have to write single pane UI for then create UI for layout directory if we have to create two pane layout then below 3.2 we have to specify in layout-large directory, on 3.2 and above we can specify the layout in directory layout-sw600dp.
ü  Use orientation qualifiers, some layouts are works fine in both configurations like landscape and portrait mode but some time we need to show different layouts at that time we can specify small screen portrait, small screen landscape, 7 tablet portrait, 7 tablet landscape, 10 tablet portrait, 10 tablet landscape and TV landscape.
Use Nine patch image, supporting different screen sizes your resources are capable to adapting different screen sizes.

Comments

Popular posts from this blog

Custom camera using SurfaceView android with autofocus & auto lights & more

Custom camera using SurfaceView android with autofocus & auto lights & much more /**  * @author Tatyabhau Chavan  *  */ public class Preview extends SurfaceView implements SurfaceHolder.Callback {     private SurfaceHolder mHolder;     private Camera mCamera;     public Camera.Parameters mParameters;     private byte[] mBuffer;     private Activity mActivity;     // this constructor used when requested as an XML resource     public Preview(Context context, AttributeSet attrs) {         super(context, attrs);         init();     }     public Preview(Context context) {         super(context);         init();     }     public Camera getCamera() {        ...

Get Android phone call history/log programmatically

Get Android phone call history/log programmatically To get call history programmatically first add read conact permission in Manifest file : <uses-permission android:name="android.permission.READ_CONTACTS" /> Create xml file. Add the below code in xml file : <Linearlayout android:layout_height="fill_parent"  android:layout_width="fill_parent" android:orientation="vertical"> <Textview android:id="@+id/call" android:layout_height="fill_parent" android:layout_width="fill_parent"> </Textview> </Linearlayout> Now call the getCallDetails() method in java class : private void getCallDetails() { StringBuffer sb = new StringBuffer(); Cursor managedCursor = managedQuery( CallLog.Calls.CONTENT_URI,null, null,null, null); int number = managedCursor.getColumnIndex( CallLog.Calls.NUMBER ); int type = managedCursor.getColumnIndex( CallLog.Calls.TYPE ); int date = managedCur...

Actionbar using Javascript,CSS & XML in Android

index.js JavaScript function doClickMenu(evt){   alert(evt.source.title); } // we need to do some things to the Window once it is properly instanciated, so we add an event listener to its OPEN event $.win.addEventListener('open',function(){         var actionBar = $.win.activity.actionBar; // get a handle to the action bar         actionBar.title='My App'; // change the App Title         actionBar.displayHomeAsUp=true; // Show the "angle" pointing back         actionBar.onHomeIconItemSelected = function() { // what to do when the "home" icon is pressed                Ti.API.info("Home icon clicked!");     };   }) // now open the window.   The event listener will fire right after this ...