├── .gitignore ├── AndroidsDemo ├── .settings │ └── org.eclipse.jdt.core.prefs ├── AndroidManifest.xml ├── build.gradle ├── ic_launcher-web.png ├── proguard-project.txt ├── project.properties ├── res │ ├── drawable-hdpi │ │ └── ic_launcher.png │ ├── drawable-mdpi │ │ └── ic_launcher.png │ ├── drawable-v21 │ │ ├── btn.xml │ │ └── btn_ripple.xml │ ├── drawable-xhdpi │ │ └── ic_launcher.png │ ├── drawable-xxhdpi │ │ ├── bg.png │ │ ├── bg2.png │ │ ├── dl_ic_drag.png │ │ ├── dl_ic_drag_inact.png │ │ ├── dl_ic_move.png │ │ ├── ic_emoij.jpg │ │ ├── ic_launcher.png │ │ ├── slot_01.png │ │ ├── slot_02.png │ │ ├── slot_03.png │ │ ├── slot_04.png │ │ ├── slot_05.png │ │ ├── slot_06.png │ │ ├── slot_07.png │ │ ├── socially_default_portrait_female.png │ │ ├── socially_default_portrait_male.png │ │ ├── socially_portrait_female.png │ │ ├── socially_portrait_male.png │ │ ├── socially_portrait_other.png │ │ └── world_map.png │ ├── drawable │ │ ├── btn_selector.xml │ │ ├── dl_drag_selector.xml │ │ ├── dl_item_bg_selector.xml │ │ └── shape_slot_machine_border.xml │ ├── layout │ │ ├── activity_animatorutil_demo.xml │ │ ├── activity_drag_listview.xml │ │ ├── activity_easyadpater.xml │ │ ├── activity_ellipise_demo.xml │ │ ├── activity_keyboard_layout.xml │ │ ├── activity_main.xml │ │ ├── activity_maskimageview.xml │ │ ├── activity_other.xml │ │ ├── activity_ratioimageview.xml │ │ ├── activity_scrollpickerview.xml │ │ ├── activity_shapeimageview.xml │ │ ├── activity_touchgesturedetector.xml │ │ ├── dl_added_item.xml │ │ ├── dl_added_plugin_item.xml │ │ ├── dl_not_added_item.xml │ │ ├── dl_not_added_plugin_item.xml │ │ ├── item_string.xml │ │ ├── register_portrait_female_list.xml │ │ ├── register_portrait_male_list.xml │ │ └── slot_machine_view.xml │ ├── values-v21 │ │ └── styles.xml │ ├── values-w820dp │ │ └── dimens.xml │ └── values │ │ ├── color.xml │ │ ├── dimens.xml │ │ ├── strings.xml │ │ └── styles.xml └── src │ └── com │ └── example │ └── androidsdemo │ ├── AnimatorUtilDemo.java │ ├── DragListViewDemo.java │ ├── EasyAdapterDemo.java │ ├── EllipsizeUtilsDemo.java │ ├── KeyboardLayoutDemo.java │ ├── MainActivity.java │ ├── MaskImageViewDemo.java │ ├── RatioImageViewDemo.java │ ├── ScrollPickerViewDemo.java │ ├── ShapeImageViewDemo.java │ ├── TouchGestureDetectorDemo.java │ ├── adapter │ └── PluginListAdapter.java │ └── view │ ├── EasyPaintView.java │ ├── EllipsizingTextView.java │ └── SlotMachine.java ├── README.md ├── README_AnimatorUtil.md ├── README_DragListView.md ├── README_EasyAdapter.md ├── README_EllipsizeUtils.md ├── README_KeyboardLayout.md ├── README_MaskImageView.md ├── README_PaddingView.md ├── README_RatioImageView.md ├── README_STextView.md ├── README_SView.md ├── README_ScrollPickerView.md ├── README_ShapeImageView.md ├── androids ├── AndroidManifest.xml ├── build.gradle ├── ic_launcher-web.png ├── proguard-project.txt ├── res │ ├── values-sw600dp │ │ └── dimens.xml │ └── values │ │ ├── attrs.xml │ │ └── dimens.xml └── src │ └── cn │ └── forward │ └── androids │ ├── CompareRunnable.java │ ├── Image │ ├── AsyncDrawable.java │ ├── ImageCache.java │ ├── ImageCacheKeyGenerator.java │ ├── ImageLoader.java │ ├── ImageLoaderConfig.java │ ├── ImageLoaderGroup.java │ └── LocalImagerLoader.java │ ├── Priority.java │ ├── PriorityRunnable.java │ ├── ScaleGestureDetectorApi27.java │ ├── SimpleAsyncTask.java │ ├── TouchGestureDetector.java │ ├── utils │ ├── AnimatorUtil.java │ ├── ColorUtil.java │ ├── DateUtil.java │ ├── EllipsizeUtils.java │ ├── ImageUtils.java │ ├── LogUtil.java │ ├── ProcessUtil.java │ ├── ReflectUtil.java │ ├── StatusBarUtil.java │ ├── ThreadUtil.java │ ├── Util.java │ ├── ViewUtil.java │ └── cache │ │ ├── DiskLruCache.java │ │ ├── DiskLruUtil.java │ │ └── StrictLineReader.java │ └── views │ ├── BitmapScrollPicker.java │ ├── DragListView.java │ ├── EasyAdapter.java │ ├── KeyboardLayout.java │ ├── MaskImageView.java │ ├── PaddingImageView.java │ ├── PaddingTextView.java │ ├── PaddingViewAttrs.java │ ├── RatioImageView.java │ ├── RoundProgressBar.java │ ├── SFrameLayout.java │ ├── SLinearLayout.java │ ├── SRelativeLayout.java │ ├── STextView.java │ ├── ScrollPickerView.java │ ├── SelectorAttrs.java │ ├── ShapeImageView.java │ └── StringScrollPicker.java ├── build.gradle ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat └── settings.gradle /.gitignore: -------------------------------------------------------------------------------- 1 | # Gradle 2 | .gradle 3 | build 4 | local.properties 5 | reports 6 | 7 | # Maven 8 | target 9 | pom.xml.* 10 | bintray.properties 11 | release.properties 12 | gen-external-apklibs 13 | 14 | # Eclipse 15 | .classpath 16 | .project 17 | .settings 18 | eclipsebin 19 | 20 | # IntelliJ IDEA 21 | .idea 22 | *.iml 23 | *.ipl 24 | *.iws 25 | classes/ 26 | idea-classes/ 27 | coverage-error.log 28 | 29 | # Android 30 | gen 31 | bin 32 | project.properties 33 | out 34 | 35 | # Finder 36 | .DS_Store -------------------------------------------------------------------------------- /AndroidsDemo/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 3 | org.eclipse.jdt.core.compiler.compliance=1.6 4 | org.eclipse.jdt.core.compiler.source=1.6 5 | -------------------------------------------------------------------------------- /AndroidsDemo/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 8 | 9 | 14 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 26 | 29 | 32 | 35 | 38 | 42 | 46 | 47 | 48 | 51 | 52 | 53 | -------------------------------------------------------------------------------- /AndroidsDemo/build.gradle: -------------------------------------------------------------------------------- 1 | apply plugin: 'com.android.application' 2 | 3 | android { 4 | compileSdkVersion 26 5 | 6 | defaultConfig { 7 | applicationId "com.example.androidsdemo" 8 | minSdkVersion 14 9 | targetSdkVersion 26 10 | versionCode 1 11 | versionName "1.0" 12 | } 13 | buildTypes { 14 | release { 15 | minifyEnabled false 16 | proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 17 | } 18 | debug { 19 | debuggable true 20 | } 21 | } 22 | lintOptions { 23 | abortOnError false 24 | } 25 | 26 | sourceSets { 27 | main { 28 | manifest.srcFile 'AndroidManifest.xml' 29 | java.srcDirs = ['src'] 30 | resources.srcDirs = ['src'] 31 | aidl.srcDirs = ['src'] 32 | renderscript.srcDirs = ['src'] 33 | res.srcDirs = ['res'] 34 | assets.srcDirs = ['assets'] 35 | } 36 | } 37 | 38 | 39 | } 40 | 41 | dependencies { 42 | implementation fileTree(include: ['*.jar'], dir: 'libs') 43 | implementation project(':androids') 44 | implementation 'com.android.support:recyclerview-v7:26.1.0' 45 | implementation 'com.android.support:appcompat-v7:26.1.0' 46 | } 47 | -------------------------------------------------------------------------------- /AndroidsDemo/ic_launcher-web.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1993hzw/Androids/d515b65c4f6f86731c58c0f0c5f4f3c7bec2a874/AndroidsDemo/ic_launcher-web.png -------------------------------------------------------------------------------- /AndroidsDemo/proguard-project.txt: -------------------------------------------------------------------------------- 1 | # To enable ProGuard in your project, edit project.properties 2 | # to define the proguard.config property as described in that file. 3 | # 4 | # Add project specific ProGuard rules here. 5 | # By default, the flags in this file are appended to flags specified 6 | # in ${sdk.dir}/tools/proguard/proguard-android.txt 7 | # You can edit the include path and order by changing the ProGuard 8 | # include property in project.properties. 9 | # 10 | # For more details, see 11 | # http://developer.android.com/guide/developing/tools/proguard.html 12 | 13 | # Add any project specific keep options here: 14 | 15 | # If your project uses WebView with JS, uncomment the following 16 | # and specify the fully qualified class name to the JavaScript interface 17 | # class: 18 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 19 | # public *; 20 | #} 21 | -------------------------------------------------------------------------------- /AndroidsDemo/project.properties: -------------------------------------------------------------------------------- 1 | # This file is automatically generated by Android Tools. 2 | # Do not modify this file -- YOUR CHANGES WILL BE ERASED! 3 | # 4 | # This file must be checked in Version Control Systems. 5 | # 6 | # To customize properties used by the Ant build system edit 7 | # "ant.properties", and override values to adapt the script to your 8 | # project structure. 9 | # 10 | # To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home): 11 | #proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt 12 | 13 | # Project target. 14 | target=android-23 15 | android.library.reference.1=../AndroidsLib 16 | -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1993hzw/Androids/d515b65c4f6f86731c58c0f0c5f4f3c7bec2a874/AndroidsDemo/res/drawable-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1993hzw/Androids/d515b65c4f6f86731c58c0f0c5f4f3c7bec2a874/AndroidsDemo/res/drawable-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable-v21/btn.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable-v21/btn_ripple.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1993hzw/Androids/d515b65c4f6f86731c58c0f0c5f4f3c7bec2a874/AndroidsDemo/res/drawable-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable-xxhdpi/bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1993hzw/Androids/d515b65c4f6f86731c58c0f0c5f4f3c7bec2a874/AndroidsDemo/res/drawable-xxhdpi/bg.png -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable-xxhdpi/bg2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1993hzw/Androids/d515b65c4f6f86731c58c0f0c5f4f3c7bec2a874/AndroidsDemo/res/drawable-xxhdpi/bg2.png -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable-xxhdpi/dl_ic_drag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1993hzw/Androids/d515b65c4f6f86731c58c0f0c5f4f3c7bec2a874/AndroidsDemo/res/drawable-xxhdpi/dl_ic_drag.png -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable-xxhdpi/dl_ic_drag_inact.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1993hzw/Androids/d515b65c4f6f86731c58c0f0c5f4f3c7bec2a874/AndroidsDemo/res/drawable-xxhdpi/dl_ic_drag_inact.png -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable-xxhdpi/dl_ic_move.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1993hzw/Androids/d515b65c4f6f86731c58c0f0c5f4f3c7bec2a874/AndroidsDemo/res/drawable-xxhdpi/dl_ic_move.png -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable-xxhdpi/ic_emoij.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1993hzw/Androids/d515b65c4f6f86731c58c0f0c5f4f3c7bec2a874/AndroidsDemo/res/drawable-xxhdpi/ic_emoij.jpg -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1993hzw/Androids/d515b65c4f6f86731c58c0f0c5f4f3c7bec2a874/AndroidsDemo/res/drawable-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable-xxhdpi/slot_01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1993hzw/Androids/d515b65c4f6f86731c58c0f0c5f4f3c7bec2a874/AndroidsDemo/res/drawable-xxhdpi/slot_01.png -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable-xxhdpi/slot_02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1993hzw/Androids/d515b65c4f6f86731c58c0f0c5f4f3c7bec2a874/AndroidsDemo/res/drawable-xxhdpi/slot_02.png -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable-xxhdpi/slot_03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1993hzw/Androids/d515b65c4f6f86731c58c0f0c5f4f3c7bec2a874/AndroidsDemo/res/drawable-xxhdpi/slot_03.png -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable-xxhdpi/slot_04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1993hzw/Androids/d515b65c4f6f86731c58c0f0c5f4f3c7bec2a874/AndroidsDemo/res/drawable-xxhdpi/slot_04.png -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable-xxhdpi/slot_05.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1993hzw/Androids/d515b65c4f6f86731c58c0f0c5f4f3c7bec2a874/AndroidsDemo/res/drawable-xxhdpi/slot_05.png -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable-xxhdpi/slot_06.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1993hzw/Androids/d515b65c4f6f86731c58c0f0c5f4f3c7bec2a874/AndroidsDemo/res/drawable-xxhdpi/slot_06.png -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable-xxhdpi/slot_07.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1993hzw/Androids/d515b65c4f6f86731c58c0f0c5f4f3c7bec2a874/AndroidsDemo/res/drawable-xxhdpi/slot_07.png -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable-xxhdpi/socially_default_portrait_female.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1993hzw/Androids/d515b65c4f6f86731c58c0f0c5f4f3c7bec2a874/AndroidsDemo/res/drawable-xxhdpi/socially_default_portrait_female.png -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable-xxhdpi/socially_default_portrait_male.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1993hzw/Androids/d515b65c4f6f86731c58c0f0c5f4f3c7bec2a874/AndroidsDemo/res/drawable-xxhdpi/socially_default_portrait_male.png -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable-xxhdpi/socially_portrait_female.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1993hzw/Androids/d515b65c4f6f86731c58c0f0c5f4f3c7bec2a874/AndroidsDemo/res/drawable-xxhdpi/socially_portrait_female.png -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable-xxhdpi/socially_portrait_male.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1993hzw/Androids/d515b65c4f6f86731c58c0f0c5f4f3c7bec2a874/AndroidsDemo/res/drawable-xxhdpi/socially_portrait_male.png -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable-xxhdpi/socially_portrait_other.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1993hzw/Androids/d515b65c4f6f86731c58c0f0c5f4f3c7bec2a874/AndroidsDemo/res/drawable-xxhdpi/socially_portrait_other.png -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable-xxhdpi/world_map.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1993hzw/Androids/d515b65c4f6f86731c58c0f0c5f4f3c7bec2a874/AndroidsDemo/res/drawable-xxhdpi/world_map.png -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable/btn_selector.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable/dl_drag_selector.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable/dl_item_bg_selector.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /AndroidsDemo/res/drawable/shape_slot_machine_border.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /AndroidsDemo/res/layout/activity_animatorutil_demo.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 16 | 17 | 25 | 26 | 32 | 33 | 34 | 44 | 45 | 53 | 54 | 60 | 61 | 62 | 72 | 73 | 77 | 78 | 81 | 82 | 86 | 87 | 93 | 94 | 101 | 102 | 103 | 104 | 105 | -------------------------------------------------------------------------------- /AndroidsDemo/res/layout/activity_drag_listview.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 16 | -------------------------------------------------------------------------------- /AndroidsDemo/res/layout/activity_easyadpater.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 13 | 17 | 18 | 23 | 24 | 30 | 31 | 36 | 37 | 43 | 44 | 51 | 52 |