logo资料库

Smashing_Android_UI.pdf

第1页 / 共386页
第2页 / 共386页
第3页 / 共386页
第4页 / 共386页
第5页 / 共386页
第6页 / 共386页
第7页 / 共386页
第8页 / 共386页
资料共386页,剩余部分请下载后查看
SMASHING ANDROID UI: RESPONSIVE ANDROID UI AND DESIGN PATTERNS FOR PHONES AND TABLETS
ABOUT THE AUTHOR
AUTHOR’S ACKNOWLEDGMENTS
TABLE OF CONTENTS
INTRODUCTION
INTRODUCTION TO ANDROID DESIGN
CHAPTER 1: INTRODUCTION TO USABILITY AND USER INTERFACE DESIGN
CONSIDERING TECHNOLOGY VERSUS DESIGN
UNDERSTANDING THE MENTAL MODEL
DESIGNING FOR USERS
NO APP WILL DO EVERYTHING; PICK YOUR BATTLES
YOU ARE THE EXPERT; USERS ARE NOT DESIGNERS
KNOW YOUR USERS; DESIGN FOR REAL PEOPLE
SUMMARY
CHAPTER 2: DON’T START CODING JUST YET
PROTOTYPING
TOOLS FOR DESIGN
USER TESTING
SUMMARY
CHAPTER 3: CONSIDERATIONS IN DESIGNING FOR MOBILE AND TOUCH DEVICES
DESIGNING FOR MOBILE
DESIGNING FOR TOUCH INTERFACES
SUMMARY
CHAPTER 4: EXPLORING THE ANDROID PLATFORM
CHALLENGES OF THE ANDROID PLATFORM
ANDROID VERSIONS
ANDROID APP DISTRIBUTION
WHAT DOES OPEN SOURCE MEAN?
SUMMARY
PART II: ANDROID PLATFORM FEATURES AND UI COMPONENTS
CHAPTER 5: ANDROID APP STRUCTURE AND ONLINE GUIDELINES
ANDROID APP STRUCTURE OVERVIEW
ANDROID PROJECT STRUCTURE OVERVIEW
OFFICIAL ANDROID GUIDELINES
SUMMARY
CHAPTER 6: ANDROID INTENTS
INTENTS ALLOW APPS TO WORK TOGETHER
USING SOCIAL NETWORKS AND SHARING
WORKING WITH BROWSERS
HOW DO ANDROID INTENTS WORK?
CREATING YOUR OWN ACTIONS
INTENTS ARE EVERYWHERE
INTENTS VERSUS THIRD-PARTY APIS
SUMMARY
CHAPTER 7: ANDROID APP NAVIGATION STRUCTURE
COMPONENTS OF ANDROID NAVIGATION, ACTIVITIES, AND INTENTS
ANDROID NAVIGATION CONTROLS
SUMMARY
CHAPTER 8: HOME SCREEN APP WIDGETS
USES OF HOME SCREEN APP WIDGETS
UPDATING APP WIDGET DATA
APP WIDGET LAYOUT AND FUNCTIONALITY
IMPLEMENTING AN APP WIDGET
SUMMARY
CHAPTER 9: NOTIFYING AND INFORMING USERS
ANDROID NOTIFICATION METHODS
WHEN TO NOTIFY USERS
WHEN NOT TO NOTIFY USERS
AVOIDING POP-UPS
GETTING THE MOST FROM STATUS BAR NOTIFICATIONS
SUMMARY
CHAPTER 10: DESIGNING FOR HARDWARE BUTTONS, INPUT METHODS, AND SENSORS
DESIGNING FOR THE TOUCH SCREEN
DESIGNING PHONE HARDWARE BUTTONS
DESIGNING FOR THE ON-SCREEN KEYBOARD
DESIGNING FOR HARDWARE KEYBOARDS
DESIGNING FOR D-PADS AND TRACKBALLS
DESIGNING FOR THE STYLUS
DESIGNING FOR VOICE CONTROL
DESIGNING FOR EXTERNAL KEYBOARDS, MICE, AND TOUCHPADS
DESIGNING FOR CONNECTED SMART ACCESSORIES
DESIGNING FOR SENSORS
DESIGNING FOR A SECOND SCREEN
SUMMARY
CHAPTER 11: DESIGNING PLATFORM USER INTERFACE COMPONENTS
USING USER INTERFACE WIDGETS
CUSTOMIZING USER INTERFACE WIDGETS
ADJUSTING THE TYPOGRAPHY
USING ICONS
USING ANIMATIONS AND TRANSITIONS
SUMMARY
PART III: SCALABLE ANDROID DESIGN
CHAPTER 12: MANAGING ANDROID RESOURCES
USING ANDROID RESOURCES
DESIGNING FOR SCREEN DENSITY
DESIGNING FOR SCREEN SIZE AND FORM
DESIGNING FOR LANGUAGE AND REGION
DESIGNING FOR DEVICE CONTROLS
DESIGNING FOR PLATFORM VERSIONS
DESIGNING FOR DEVICE MODES
SUMMARY
CHAPTER 13: ANDROID APP LAYOUTS
ANDROID LAYOUT STRATEGY
LAYOUTS FROM XML AND CODE
LAYOUT MANAGERS
DEFINING A LAYOUT SIZE
SCROLLING
Z AXIS, LAYOUT ORDER
PADDING AND MARGIN
IMPORT AND MERGE LAYOUT FILES
CUSTOM LAYOUTS
ANDROID DEVELOPMENT TOOLS USER INTERFACE BUILDER
DEBUGGING LAYOUTS
SUMMARY
CHAPTER 14: SCALABLE GRAPHICS
NINE-PATCHING
DRAWABLE XML
DRAWING FROM CODE
SUMMARY
CHAPTER 15: BEYOND SCALABLE – RESPONSIVE DESIGN
MORE ANDROID DEVICES THAN JUST PHONES
UNDERSTANDING RESPONSIVE DESIGN
COMMON WAYS TO CREATE RESPONSIVE USER INTERFACES
SUMMARY
CHAPTER 16: IMPLEMENTING RESPONSIVE USER INTERFACES
INTRODUCTION TO FRAGMENTS
FRAGMENT AND ACTIVITY ARCHITECTURE
MIGRATING EXISTING APPS
LOOKING AT AN EXAMPLE APP
SUMMARY
PART IV: ANDROID UI DESIGN PATTERNS
CHAPTER 17: INTRODUCTION TO USER INTERFACE DESIGN PATTERNS
USER INTERFACE DESIGN PATTERNS
BENEFITS OF USING UI DESIGN PATTERNS
DESIGN PATTERNS IN ANDROID DESIGN GUIDELINES
USER INTERFACE DESIGN PATTERNS FOUND IN THIS BOOK
SUMMARY
CHAPTER 18: USER ACTION DESIGN PATTERNS
USING THE ACTION BAR PATTERN
USING THE QUICK ACTIONS DESIGN PATTERN
USING THE ACTION DRAWER DESIGN PATTERN
USING THE PULL-TO-REFRESH DESIGN PATTERN
USING THE SWIPE-TO-DISMISS GESTURE
SUMMARY
CHAPTER 19: NAVIGATION AND LAYOUT DESIGN PATTERNS
USING STACKED GALLERIES
USING THE DASHBOARD
USING WORKSPACES
USING SPLIT VIEW
USING THE EXPAND-IN-CONTEXT PATTERN
USING SIDE NAVIGATION
SUMMARY
CHAPTER 20: DATA DESIGN PATTERNS
USING DYNAMIC LISTS
USING THE IMAGE PLACEHOLDER PATTERN
USING THE NON-FORCED LOGIN PATTERN
USING THE DRAG-TO-REORDER HANDLE PATTERN
SUMMARY
CHAPTER 21: USER INTERFACE DESIGN ANTI-PATTERNS
AVOID USING THE SPLASH SCREEN
AVOID USING THE TUTORIAL SCREEN
AVOID USING THE CONFIRMATION WINDOW
AVOID USING THE ON-SCREEN BACK BUTTON
AVOID USING THE MENU BUTTON
AVOID HIDING THE STATUS BAR
AVOID USING SWIPE OVERLAY FOR QUICK ACTIONS
AVOID USING NON-ANDROID DESIGNS
SUMMARY
INDEX
SMASHING ANDROID UI: RESPONSIVE USER INTERFACES AND DESIGN PATTERNS FOR ANDROID PHONES AND TABLETS Juhani Lehtimäki A John Wiley and Sons, Ltd, Publication
This edition first published 2013 © 2013 John Wiley & Sons, Inc. Registered office John Wiley & Sons Ltd, The Atrium, Southern Gate, Chichester, West Sussex, PO19 8SQ, United Kingdom For details of our global editorial offices, for customer services and for information about how to apply for permission to reuse the copyright material in this book please see our website at www.wiley.com. The right of the author to be identified as the author of this work has been asserted in accordance with the Copyright, Designs and Patents Act 1988. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, photocopy- ing, recording or otherwise, except as permitted by the UK Copyright, Designs and Patents Act 1988, without the prior permission of the publisher. Wiley also publishes its books in a variety of electronic formats. Some content that appears in print may not be available in electronic books. Designations used by companies to distinguish their products are often claimed as trademarks. All brand names and product names used in this book are trade names, service marks, trademarks or registered trademarks of their respective owners. The publisher is not associated with any product or vendor mentioned in this book. This publication is designed to provide accurate and authoritative information in regard to the subject matter covered. It is sold on the understanding that the publisher is not engaged in rendering professional services. If professional advice or other expert assistance is required, the services of a competent professional should be sought. Trademarks: Wiley and the Wiley logo are trademarks or registered trademarks of John Wiley & Sons, Inc. and/ or its affiliates in the United States and/or other countries, and may not be used without written permission. All trademarks are the property of their respective owners. John Wiley & Sons, Inc. is not associated with any product or vendor mentioned in the book. Neither the content in this book nor the author have any direct affiliation with Google Inc. Android and Google are trademarks of Google Inc. 978-1-118-38728-3 A catalogue record for this book is available from the British Library. Set in 10/12 Minion Pro Regular by Indianapolis Composition Services Printed in the U.S. by Command Web Missouri
PUBLISHER’S ACKNOWLEDGEMENTS Some of the people who helped bring this book to market include the following: Editorial and Production VP Consumer and Technology Publishing Director: Michelle Leete Associate Director–Book Content Management: Martin Tribe Associate Publisher: Chris Webb Acquisitions Editor: Craig Smith Publishing Assistant: Ellie Scott Development Editor: Kezia Endsley Copy Editor: Kezia Endsley Technical Editor: Sebastian Kaspari Editorial Manager: Jodi Jensen Senior Project Editor: Sara Shlaer Editorial Assistant: Leslie Saxman Marketing Senior Marketing Manager: Louise Breinholt Marketing Executive: Kate Parrett Composition Services Compositor: Christin Swinford Proofreader: Wordsmith Editorial Indexer: Potomac Indexing, LLC
ABOUT THE AUTHOR Juhani Lehtimäki is a developer with more than 10 years of experience in consulting and products in various business domains and technologies. He’s been working on projects varying from Eclipse plug-in development to backend XML transformation to frontend web development and user interface design. Recently, Juhani has been concentrating on Android and especially Android user interface design and development. Usability and user interface design has been his passion since early university studies. His interest in user interface design and Android led to the start of a blog about Android user interface design patterns in 2010. He still actively writes about topical user interface issues at http://www.androiduipatterns.com/ as well as participates in the active discussions around Android in the Google+ social network.
AUTHOR’S ACKNOWLEDGMENTS Writing this book was a lot of work and a lot of fun. It would not have been possible without the support of my girlfriend who patiently understood why I had to sit inside and type away instead of enjoying her company for the last few months. Thank you for your understanding! I also want to extend my gratitude to my employer and colleagues at Snapp TV Ltd. for being flexible about work arrangements and letting me spend some of my working hours writing this book. A special thanks to Jasper Morgan for encouraging me to take the time I needed for the book, thus avoiding too much stress in the process. Also, a big thank you to the awesome Android community that has formed in the Google+ social network. I enjoy reading your posts and comments. Topical matters are discussed in a very informative and friendly matter that encourages everyone to participate. A big thank you to Google’s Android developer advocates, especially Nick Butcher, for the active participation in those discussions as well as the encouragement to write about Android. Thank you to everyone who has read my blog posts and commented on them. It has encour- aged me to keep writing and I have learned a lot. Thank you to fellow Android bloggers who have helped to accumulate the amount of information in the online Android community. Building Android apps would be very difficult without the community of Android library contributors. Thank you to anyone who has built an Android library and distributed it free and Open Source for anyone to use. You all are doing amazing work and making everyone’s life easier! I also want to thank Google for providing tools to build Android apps as well as giving us the Android operating system. Writing this book would not have been possible without the awesome Google Drive (docs) that allowed me to concentrate on the writing instead of figuring out the word processing software. Big thank you also to Herzoglich Bayerisches Brauhaus Tegernsee for giving me energy in the late nights of writing. Last but not least a huge thank you to Wiley for letting me write my first book. Thank you to Kezia Endsley, Craig Smith, and Sara Shlaer for guiding me in the process and all the help you’ve given me. A massive thanks to Sebastian Kaspari for being the technical editor of this book and making sure that all the code and examples work and are understandable. Thank you to Kevin Cannon for helping me by providing a designer’s point of view for many things.
分享到:
收藏