-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit ec1f86f
Showing
81 changed files
with
6,762 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
# built application files | ||
*.apk | ||
*.ap_ | ||
|
||
# files for the dex VM | ||
*.dex | ||
|
||
# Java class files | ||
*.class | ||
.DS_Store | ||
|
||
# generated files | ||
bin/ | ||
gen/ | ||
Wiki/ | ||
|
||
# Local configuration file (sdk path, etc) | ||
local.properties | ||
|
||
# Eclipse project files | ||
.classpath | ||
.project | ||
.settings/ | ||
|
||
# Proguard folder generated by Eclipse | ||
proguard/ | ||
|
||
#Android Studio | ||
build/ | ||
|
||
# Intellij project files | ||
*.iml | ||
*.ipr | ||
*.iws | ||
.idea/ | ||
|
||
#gradle | ||
.gradle/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
language: android | ||
android: | ||
components: | ||
# Uncomment the lines below if you want to | ||
# use the latest revision of Android SDK Tools | ||
# - platform-tools | ||
# - tools | ||
|
||
# The BuildTools version used by your project | ||
- build-tools-22.0.1 | ||
|
||
# The SDK version used to compile your project | ||
- android-22 | ||
|
||
# Additional components | ||
- extra-google-google_play_services | ||
- extra-google-m2repository | ||
- extra-android-m2repository | ||
- addon-google_apis-google-19 | ||
|
||
# Specify at least one system image, | ||
# if you need to run emulator(s) during your tests | ||
- sys-img-armeabi-v7a-android-19 | ||
- sys-img-x86-android-17 | ||
script: ./gradlew assembleDebug |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
The MIT License | ||
|
||
Permission is hereby granted, free of charge, to any person obtaining a copy | ||
of this software and associated documentation files (the "Software"), to deal | ||
in the Software without restriction, including without limitation the rights | ||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
copies of the Software, and to permit persons to whom the Software is | ||
furnished to do so, subject to the following conditions: | ||
|
||
The above copyright notice and this permission notice shall be included in | ||
all copies or substantial portions of the Software. | ||
|
||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN | ||
THE SOFTWARE. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,113 @@ | ||
# Android Image Slider [![Build Status](https://travis-ci.org/daimajia/AndroidImageSlider.svg)](https://travis-ci.org/daimajia/AndroidImageSlider) | ||
|
||
[![Gitter](https://badges.gitter.im/Join Chat.svg)](https://gitter.im/daimajia/AndroidImageSlider?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) | ||
|
||
This is an amazing image slider for the Android platform. I decided to open source this because there is really not an attractive, convenient slider widget in Android. | ||
|
||
You can easily load images from an internet URL, drawable, or file. And there are many kinds of amazing animations you can choose. :-D | ||
|
||
## Demo | ||
|
||
![](http://ww3.sinaimg.cn/mw690/610dc034jw1egzor66ojdg20950fknpe.gif) | ||
|
||
[Download Apk](https://github.com/daimajia/AndroidImageSlider/releases/download/v1.0.8/demo-1.0.8.apk) | ||
|
||
## Usage | ||
|
||
### Step 1 | ||
|
||
#### Gradle | ||
|
||
```groovy | ||
dependencies { | ||
compile "com.android.support:support-v4:+" | ||
compile 'com.squareup.picasso:picasso:2.3.2' | ||
compile 'com.nineoldandroids:library:2.4.0' | ||
compile 'com.daimajia.slider:library:1.1.5@aar' | ||
} | ||
``` | ||
|
||
|
||
#### Maven | ||
|
||
```xml | ||
<dependency> | ||
<groupId>com.squareup.picasso</groupId> | ||
<artifactId>picasso</artifactId> | ||
<version>2.3.2</version> | ||
</dependency> | ||
<dependency> | ||
<groupId>com.nineoldandroids</groupId> | ||
<artifactId>library</artifactId> | ||
<version>2.4.0</version> | ||
</dependency> | ||
<dependency> | ||
<groupId>com.daimajia.slider</groupId> | ||
<artifactId>library</artifactId> | ||
<version>1.1.2</version> | ||
<type>apklib</type> | ||
</dependency> | ||
``` | ||
|
||
#### Eclipse | ||
|
||
For Eclipse users, I provided a sample project which orgnized as Eclipse way. You can download it from [here](https://github.com/daimajia/AndroidImageSlider/releases/download/v1.0.9/AndroidImageSlider-Eclipse.zip), and make some changes to fit your project. | ||
|
||
Notice: It's the version of 1.0.9, it may not update any more. You can update manually by yourself. | ||
|
||
### Step 2 | ||
|
||
Add permissions (if necessary) to your `AndroidManifest.xml` | ||
|
||
```xml | ||
<!-- if you want to load images from the internet --> | ||
<uses-permission android:name="android.permission.INTERNET" /> | ||
|
||
<!-- if you want to load images from a file OR from the internet --> | ||
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> | ||
``` | ||
|
||
**Note:** If you want to load images from the internet, you need both the `INTERNET` and `READ_EXTERNAL_STORAGE` permissions to allow files from the internet to be cached into local storage. | ||
|
||
If you want to load images from drawable, then no additional permissions are necessary. | ||
|
||
### Step 3 | ||
|
||
Add the Slider to your layout: | ||
|
||
```java | ||
<com.daimajia.slider.library.SliderLayout | ||
android:id="@+id/slider" | ||
android:layout_width="match_parent" | ||
android:layout_height="200dp" | ||
/> | ||
``` | ||
|
||
There are some default indicators. If you want to use a provided indicator: | ||
|
||
```java | ||
<com.daimajia.slider.library.Indicators.PagerIndicator | ||
android:id="@+id/custom_indicator" | ||
android:layout_width="wrap_content" | ||
android:layout_height="wrap_content" | ||
android:gravity="center" | ||
/> | ||
``` | ||
|
||
[Code example](https://github.com/daimajia/AndroidImageSlider/blob/master/demo%2Fsrc%2Fmain%2Fjava%2Fcom%2Fdaimajia%2Fslider%2Fdemo%2FMainActivity.java) | ||
|
||
==== | ||
|
||
## Advanced usage | ||
|
||
Please visit [Wiki](https://github.com/daimajia/AndroidImageSlider/wiki) | ||
|
||
## Thanks | ||
|
||
- [Picasso](https://github.com/square/picasso) | ||
- [NineOldAndroids](https://github.com/JakeWharton/NineOldAndroids) | ||
- [ViewPagerTransforms](https://github.com/ToxicBakery/ViewPagerTransforms) | ||
|
||
##About me | ||
|
||
I am a student in mainland China. I love Google, love Android, love everything that is interesting. If you get any problems when using this library or you have an internship opportunity, please feel free to [email me](mailto:[email protected]). :smiley: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
// Top-level build file where you can add configuration options common to all sub-projects/modules. | ||
|
||
task wrapper(type: Wrapper) { | ||
gradleVersion = '2.2.1' | ||
} | ||
|
||
buildscript { | ||
repositories { | ||
mavenCentral() | ||
} | ||
dependencies { | ||
classpath 'com.android.tools.build:gradle:2.2.2' | ||
} | ||
} | ||
|
||
allprojects { | ||
repositories { | ||
mavenCentral() | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
/build |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
apply plugin: 'com.android.application' | ||
|
||
|
||
android { | ||
compileSdkVersion 22 | ||
buildToolsVersion "22.0.1" | ||
|
||
defaultConfig { | ||
minSdkVersion 8 | ||
targetSdkVersion 22 | ||
versionCode 2 | ||
versionName "1.0.1" | ||
} | ||
buildTypes { | ||
release { | ||
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' | ||
} | ||
} | ||
} | ||
|
||
dependencies { | ||
compile fileTree(dir: 'libs', include: ['*.jar']) | ||
compile project(':library') | ||
compile 'com.android.support:appcompat-v7:22.+' | ||
compile 'com.nineoldandroids:library:2.4.0' | ||
compile 'com.daimajia.androidanimations:library:1.0.3@aar' | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
# Add project specific ProGuard rules here. | ||
# By default, the flags in this file are appended to flags specified | ||
# in /Applications/Android Studio.app/sdk/tools/proguard/proguard-android.txt | ||
# You can edit the include path and order by changing the ProGuard | ||
# include property in project.properties. | ||
# | ||
# For more details, see | ||
# http://developer.android.com/guide/developing/tools/proguard.html | ||
|
||
# Add any project specific keep options here: | ||
|
||
# If your project uses WebView with JS, uncomment the following | ||
# and specify the fully qualified class name to the JavaScript interface | ||
# class: | ||
#-keepclassmembers class fqcn.of.javascript.interface.for.webview { | ||
# public *; | ||
#} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
<?xml version="1.0" encoding="utf-8"?> | ||
<manifest xmlns:android="http://schemas.android.com/apk/res/android" | ||
package="com.daimajia.slider.demo" > | ||
|
||
<application | ||
android:allowBackup="true" | ||
android:icon="@drawable/ic_launcher" | ||
android:label="@string/app_name" | ||
android:theme="@style/AppTheme" > | ||
<activity | ||
android:name="com.daimajia.slider.demo.MainActivity" | ||
android:label="@string/app_name" > | ||
<intent-filter> | ||
<action android:name="android.intent.action.MAIN" /> | ||
|
||
<category android:name="android.intent.category.LAUNCHER" /> | ||
</intent-filter> | ||
</activity> | ||
</application> | ||
|
||
</manifest> |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
51 changes: 51 additions & 0 deletions
51
demo/src/main/java/com/daimajia/slider/demo/ChildAnimationExample.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
package com.daimajia.slider.demo; | ||
|
||
import android.util.Log; | ||
import android.view.View; | ||
|
||
import com.daimajia.androidanimations.library.attention.StandUpAnimator; | ||
import com.daimajia.slider.library.Animations.BaseAnimationInterface; | ||
|
||
public class ChildAnimationExample implements BaseAnimationInterface { | ||
|
||
private final static String TAG = "ChildAnimationExample"; | ||
|
||
@Override | ||
public void onPrepareCurrentItemLeaveScreen(View current) { | ||
View descriptionLayout = current.findViewById(com.daimajia.slider.library.R.id.description_layout); | ||
if(descriptionLayout!=null){ | ||
current.findViewById(com.daimajia.slider.library.R.id.description_layout).setVisibility(View.INVISIBLE); | ||
} | ||
Log.e(TAG,"onPrepareCurrentItemLeaveScreen called"); | ||
} | ||
|
||
@Override | ||
public void onPrepareNextItemShowInScreen(View next) { | ||
View descriptionLayout = next.findViewById(com.daimajia.slider.library.R.id.description_layout); | ||
if(descriptionLayout!=null){ | ||
next.findViewById(com.daimajia.slider.library.R.id.description_layout).setVisibility(View.INVISIBLE); | ||
} | ||
Log.e(TAG,"onPrepareNextItemShowInScreen called"); | ||
} | ||
|
||
@Override | ||
public void onCurrentItemDisappear(View view) { | ||
Log.e(TAG,"onCurrentItemDisappear called"); | ||
} | ||
|
||
@Override | ||
public void onNextItemAppear(View view) { | ||
|
||
View descriptionLayout = view.findViewById(com.daimajia.slider.library.R.id.description_layout); | ||
if(descriptionLayout!=null){ | ||
view.findViewById(com.daimajia.slider.library.R.id.description_layout).setVisibility(View.VISIBLE); | ||
// ValueAnimator animator = ObjectAnimator.ofFloat( | ||
// descriptionLayout, "y", -descriptionLayout.getHeight(), | ||
// 0).setDuration(500); | ||
// animator.start(); | ||
// new BounceInAnimator().animate(descriptionLayout); | ||
new StandUpAnimator().animate(descriptionLayout); | ||
} | ||
Log.e(TAG,"onCurrentItemDisappear called"); | ||
} | ||
} |
Oops, something went wrong.