Android Studio Development Essentials - Android 7 Edition was published on July 24th, 2016. The current revision is 1.0a. The revision of your copy of the book can be found in the copyright page at the start of the book.
Known Issues in Revision 1.0a
Section 37.4 - 39.4 Introducing the Collapsing Toolbar Layout
This section omits instructions on how to fix the Toolbar in place during an upward scrolling motion. The following should have been included at the end of this section:
To fix the toolbar in place so that it no longer recedes from view during the upward scrolling motion, replace enterAlways with exitUntilCollapsed in the layout_scrollFlags property of the CollapsingToolbarLayout element in the activity_card_demo.xml file as follows:
<android.support.design.widget.CollapsingToolbarLayout android:id="@+id/collapsing_toolbar" android:layout_width="match_parent" android:layout_height="match_parent" app:layout_scrollFlags="scroll|exitUntilCollapsed" android:fitsSystemWindows="true" app:contentScrim="?attr/colorPrimary" app:expandedTitleMarginStart="48dp" app:expandedTitleMarginEnd="64dp">
Section 39.7 - Modifying the WebsiteDetailFragment Class
Under certain circumstances, the web pages in this chapter load into the Chrome browser instead of the WebView instance. To resolve this issue, modify the code within the onCreateView method of the WebSiteDetailFragment.java file as follows:
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View rootView = inflater.inflate(R.layout.website_detail, container, false); // Show the dummy content as text in a TextView. if (mItem != null) { WebView webView = (WebView) rootView.findViewById(R.id.website_detail); webView.setWebViewClient(new WebViewClient(){ @Override public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) { return super.shouldOverrideUrlLoading(view, request); } }); webView.getSettings().setJavaScriptEnabled(true); webView.loadUrl(mItem.website_url); } return rootView; }
Known Issues in Revision 1.0
The current Android Studio 2.2 Beta release uses a RelativeLayout instead of a ConstraintLayout by default when creating new projects. When working through the tutorials in the book, refer to the Component Tree and convert the parent layout from a RelativeLayout to a ConstraintLayout by right clicking on the RelativeLayout component in the tree and selecting the Convert RelativeLayout to ConstraintLayout menu option as shown below:
Accept the default options in the resulting dialog and wait for the project to rebuild before following the remaining steps in the book tutorials.
If you have encountered an issue with the book not listed above please contact us as at [email protected] and we will work to resolve the issue for you as quickly as possible.