Home | History | Annotate | Download | only in articles
      1 page.title=UI Framework Changes in Android 1.5
      2 @jd:body
      3 
      4 
      5 <p>Android 1.5 offers a different default look for
      6 the Android UI framework, in relation to Android 1.0 and 1.1. The
      7 screenshots below show the same activity (creating a new contact) on
      8 Android 1.1 and Android 1.5:</p>
      9 
     10 <img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 277px;" src="images/android.png" alt="" id="BLOGGER_PHOTO_ID_5323141124169754690" border="0">
     11 
     12 <p>You
     13 can see in this example that the buttons and checkboxes have a new
     14 appearance. Even though these changes do not affect binary nor source
     15 compatibility, they might still break the UI of your apps. As part of
     16 the UI refresh, the minimum size of some of the widgets has changed.
     17 For instance, Android 1.1 buttons have a minimum size of 44x48 pixels
     18 whereas Android 1.5 buttons now have a minimum size of 24x48 pixels.
     19 The image below compares the sizes of Android 1.1 buttons with Android
     20 1.5 buttons:</p>
     21 
     22 <img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 100px; height: 130px;" src="images/buttons.png" alt="" border="0">
     23 
     24 <p>If you rely on the button's minimum size, then the layout of your application
     25 may not be the same in Android 1.5 as it was in Android 1.1 because of this
     26 change. This would happen for instance if you created a grid of buttons using
     27 <code>LinearLayout</code> and relying on the minimum size yielded by
     28 <code>wrap_content</code> to align the buttons properly:</p>
     29 
     30 <img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 277px;" src="images/grid.png" alt="" id="BLOGGER_PHOTO_ID_5323147943613255250" border="0">
     31 
     32 <p>This layout could easily be fixed by using the
     33 <code>android:layout_weight</code> attribute or by replacing the
     34 <code>LinearLayout</code> containers with a <code>TableLayout</code>.</p>
     35 
     36 <p>This example is probably the worst-case UI issue you may encounter when
     37 running your application on Android 1.5. Other changes introduced in Android
     38 1.5, especially bug fixes in the layout views, may also impact your
     39 applicationespecially if it is relying on faulty/buggy behavior of the UI
     40 framework.</p>
     41 
     42 <p>If you encounter issues when running your application on Android 1.5, please
     43 join us on the <a href="{@docRoot}resources/community-groups.html">Android
     44 developer groups</a> or <a
     45 href="{@docRoot}resources/community-more.html">IRC</a> so that we and the
     46 Android community can help you fix your application.</p>
     47 
     48 <p>Happy coding!</p>
     49