The realization of part UI of imitation NetEase cloud music

Source: Internet
Author: User

Introduction

There is a period of time idle nothing to do, whim, so went to prevent some NetEase cloud UI interface, the first is to imitate this look:

So the anti-compilation of NetEase cloud source files, sure enough confusion is very thorough, said can not read, Connaught:

Most of the code inside is Smali syntax, which is:

. class Publicla/auu/a;.SuperLjava/lang/object;. Source"A.java"#StaticFields.field Public Static FinalCRLF:I =0x4. fieldPrivate Static FinalDecode:[i.fieldPrivate Static FinalDecode_websafe:[i.field Public Static FinalDEFAULT:I =0x0. fieldPrivate Static FinalEQUALS:I =-0x2. field Public Static FinalNO_CLOSE:I =0x10. field Public Static FinalNO_PADDING:I =0x1. field Public Static FinalNO_WRAP:I =0x2. fieldPrivate Static FinalSKIP:I =-0x1. field Public Static FinalURL_SAFE:I =0x8. fieldStatic Finalkey:ljava/lang/string; ="Encrypt"# instance Fields.fieldPrivateM_alphabet:[i.field PublicM_op:i.field PublicM_output:[b.fieldPrivateM_state:i.fieldPrivatem_value:i# Direct Methods.methodStaticConstructor <clinit> () v. Locals 8. PrologueConst/4 V7, 0x4Const/4 V6, 0x3Const/4 V5, 0x2Const/4 V4, 0x1Const/4 v3, -0x1. Line 188Const/16 V0, 0x100New-array V0, V0, [IConst/4 v1, 0x0. Line 189 aput v3, V0, v1 aput v3, V0, v4 aput v3, V0, V5 aput v3, V0, V6 Aput v3, V0, V7Const/4 V1, 0x5 aput v3, V0, v1Const/4 V1, 0x6 aput v3, V0, v1Const/4 V1, 0x7 aput v3, V0, v1Const/16 v1, 0x8 aput v3, V0, v1Const/16 v1, 0x9 aput v3, V0, v1Const/16 v1, 0xa aput v3, V0, v1Const/16 v1, 0xb aput v3, V0, v1Const/16 v1, 0xc aput v3, V0, v1Const/16 v1, 0xd aput v3, V0, v1Const/16 v1, 0xe aput v3, V0, v1Const/16 v1, 0xf aput v3, V0, v1Const/16 v1, 0x10 line Aput v3, V0, v1Const/16 v1, 0x11 aput v3, V0, v1Const/16 v1, 0x12 aput v3, V0, v1Const/16 v1, 0x13 aput v3, V0, v1Const/16 v1, 0x14 aput v3, V0, v1Const/16 v1, 0x15 aput v3, V0, v1Const/16 v1, 0x16 aput v3, V0, v1Const/16 v1, 0x17 aput v3, V0, v1Const/16 v1, 0x18 aput v3, V0, v1Const/16 v1, 0x19 aput v3, V0, v1

Then I slowly groping, the result when the end of the UI is found in fact still took a lot of detours, such as the side of NetEase cloud I thought it was a simple drawerlayout:

When the realization of their own time to find that if the simple is drawerlayout, although the layout can be exactly the same but when the item is a lot of time, the more the item will be mobile phone navigation bar blocked, there is no way to slip up, However, NetEase cloud music has been used to know that the side of NetEase cloud can be sliding up and down, so I added navigationview on the basis of drawerlayout, however, while the side bar can slide up and down, But using Navigationview to know that it's customizable is very low, and the result I made is this:

Although the screen looks very normal, but the actual effect of these icons and text are small, completely incompatible with NetEase cloud music UI, until I almost did one weeks, I found this on GitHub:
Materialnavigationdrawer

Let me cry in silence for a while, but even know, with my so lazy character or not to change, estimated that this is the three points of heat, and then on a few to achieve:

This is the main implementation of the section:

This is the pop-up Popupwindow:

The basic content is probably:

    • Custom AD Carousel Diagram
    • The realization of Drawerlayout+navigationview
    • Immersive status bar implementation
    • NetEase cloud Music native loading animation (I'm embarrassed to say that this is a frame animation)
    • Tablayout+viewpager implementation of the main interface switch
    • Load startup page with layout layouts to prevent startup white screen/black screen
    • Some ListView resources populate the correct configuration of the-app startup page

Roughly on these, at the beginning of the first time to look for reference to find out all places have no one to do this, but they like NetEase Cloud music Android version, want to achieve the specific logic function and not that ability, also can only achieve the following UI self-comfort, the following a copy of NetEase cloud music used by the Open Source Library, I also do not know which version is, the estimated change is not very large, interested can be studied under:


Material-dialogs
MD dialog box


Fastjson
JSON parsing


Fresco
Picture loading


Circleprogress
Round progress bar


Drag-sort-listview
Reorder by dragging and dragging


Bottomsheet
Bottom menu Operation Bottom sheets


Android-flowlayout
Flow layout


Android-observablescrollview
Scrolling View observing scrolling events



Android-stackblur/nativestackblur

Gaussian Blur using nativeblurprocess


Pagerslidingtabstrip
Viewpager Slide page Navigation effect


Holocolorpicker
Color Picker


Zoomabledraweeview-sample
Fresco ' s Zoomabledraweeview


Shimmer-android
View Flash Effect


Swipebacklayout
Slide back Effect


Android-flipview
Flip Animation effect


Fab-transformation
Floating action Button Toggle


Android-wheel
Wheel Picker


Pinyin4j
Kanji to Pinyin


Danmakuflamemaster
Open Source Bullet screen engine


Cybergarage-upnp
DLNA


PhotoView
Picture Zoom

The above Source library sources

At last

Originally wanted to record a GIF animated display specific effect but genymotion simulator just convulsions, do not show the immersive status bar, and then the resolution is quite low, want to find other ways to implement also did not find, no way to replace, there is interested can download items to see, is Android Studio project.

GitHub

You can't turn the wall on this:
CSDN

The realization of part UI of imitation NetEase cloud music

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.