First post a reference to the article, write good: In the low version of the Android system to achieve material design application
The following is a summary of the work, and lists some common styles of how the <5.0 device implements material design.
- Large element
- What other obvious big elements are "to be added"
- Dropdown Refresh "can be implemented, similar to Gmail drop-down refreshed style"
- Swiperefreshlayoutdemo "Google official out of the refresh, here is an example"
- Android-ultra-pull-to-refresh
- Action Bar "can be implemented"
- Google's own support V7 R21 provides classes, mostly Theme.appcompat
- Floating action Button "can be implemented"
- Open source project Futuresimple/android-floating-action-button more appropriate, the only disadvantage is that the value of support API 14 or more of the system version
- Scrolling techniques (scrolling) "can be achieved"
- Open Source Project Notboringactionbar
- Navigation Drawer (navigation drawer) "can be achieved"
- The classes provided by Google's own support V7 R21 (specifically the appcompat→action bar→navigation Drawer Toggle in the latest version of the V7 demo)
- Open source project kanytu/android-material-drawer-template with Gmail-style navigation drawer (cover Actionbar when unfolded)
- Navigational transitions (navigation conversion) "may be, but not yet."
- Divided into 2 kinds: Parent to Child, Sibling to Sibling
- Tabs (Navigation tab) "can be implemented, but not found"
- Bottom sheets (bottom window) "It should be OK, but not yet."
- Other small elements
- What other obvious little elements "to add"
- Ripple Effects "can be achieved"
- Rippleeffect Open Source Project works best
- SnackBar "can be achieved"
- Open Source project Mrengineer13/snackbar can already meet the requirements
- Open Source Project Materialdesignlibrary
- Colorselector "can be achieved"
- Open Source Project Materialdesignlibrary has this control inside.
- Typography "can be implemented, not recommended first"
- In fact, there are 2 fonts: Robot–latin, Greek, and Cyrillic scripts; Noto–all Other languages
- Color (large color block) "can be implemented"
- Related to development is the use of color, the support V7 R21 inside just define a Material_blue series of colors, and not all 20 colors are defined in project. In actual development, development only needs to define the color according to Google's example.
- Layout:metrics and Keylines (provisions on margin/spacing) "can be achieved"
- Designed for design and implementation without problems
- ToolTips (tool tip) "can be implemented"
- For a touch screen, a ToolTip will appear when you press and hold a graphic button (no text)
- Actionbar has implemented this mechanism, which is why I strongly recommend using Google's Actionbar instead of drawing a actionbar that looks like Actionbar.
- Text fields (textual input) "Partial implementation"
- The Theme.appcompat theme provided by support V7 R21 already covers the EditText controls, but as for small features such as the number of words and color changes, I guess not (no debugging), this will be added later
- Buttons "can be implemented, specific to be debugged"
- There are 4 types of buttons:floating action button, raised button, Flat button, Pulldown button
- Floating action button see above,
- Raised button to find an open source project, essentially adding an edge to the shadow
- The Flat button is primarily used for dialog box OK/Cancel buttons, which are already available in the open Source project of the dialog box (currently not seen alone)
- Pulldown button, look like the spinner down list is the same as before
- Switches "can be implemented, specific to be debugged"
- There are 3 categories in this: Checkbox, Radio button, Switch
- Support V7 R21 inside Theme.appcompat has covered the above 3 kinds of control style, but the color only light/drak two kinds of
- Open source third-party projects also have more flexible in the above control (self-written), that can easily change the color
[Experience summary]material design effect and development summary