├── .gitignore ├── README.md ├── app ├── .gitignore ├── build.gradle ├── proguard-rules.pro └── src │ ├── androidTest │ └── java │ │ └── com │ │ └── ihsanbal │ │ └── io │ │ └── ExampleInstrumentedTest.java │ ├── main │ ├── AndroidManifest.xml │ ├── java │ │ └── com │ │ │ └── ihsanbal │ │ │ └── io │ │ │ └── MainActivity.java │ └── res │ │ ├── drawable │ │ ├── diyarbekir_wp.jpg │ │ ├── istanbul_wp.jpg │ │ ├── izmir_wp.jpeg │ │ └── rize_wp.jpg │ │ ├── layout │ │ └── activity_main.xml │ │ ├── mipmap-hdpi │ │ └── ic_launcher.png │ │ ├── mipmap-mdpi │ │ └── ic_launcher.png │ │ ├── mipmap-xhdpi │ │ └── ic_launcher.png │ │ ├── mipmap-xxhdpi │ │ └── ic_launcher.png │ │ ├── mipmap-xxxhdpi │ │ └── ic_launcher.png │ │ ├── values-v19 │ │ └── styles.xml │ │ ├── values-w820dp │ │ └── dimens.xml │ │ └── values │ │ ├── colors.xml │ │ ├── dimens.xml │ │ ├── strings.xml │ │ └── styles.xml │ └── test │ └── java │ └── com │ └── ihsanbal │ └── io │ └── ExampleUnitTest.java ├── build.gradle ├── device-2016-10-12-125715.gif ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── library ├── .gitignore ├── build.gradle ├── proguard-rules.pro └── src │ ├── androidTest │ └── java │ │ └── com │ │ └── ihsanbal │ │ └── introview │ │ └── ExampleInstrumentedTest.java │ ├── main │ ├── AndroidManifest.xml │ ├── java │ │ └── com │ │ │ └── ihsanbal │ │ │ └── introview │ │ │ ├── AdapterPageSection.java │ │ │ ├── FragmentPage.java │ │ │ ├── IntroView.java │ │ │ ├── ParallaxPageTransformer.java │ │ │ └── ScrollerCustomDuration.java │ └── res │ │ ├── layout │ │ └── fragment_page.xml │ │ └── values │ │ ├── attrs.xml │ │ └── strings.xml │ └── test │ └── java │ └── com │ └── ihsanbal │ └── introview │ └── ExampleUnitTest.java └── settings.gradle /.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/workspace.xml 5 | /.idea/libraries 6 | .DS_Store 7 | /build 8 | /captures 9 | .externalNativeBuild 10 | /.idea/ 11 | /gradlew 12 | /gradlew.bat 13 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | SlidingIntoView 2 | 3 | [![API](https://img.shields.io/badge/API-11%2B-brightgreen.svg?style=flat-square)](https://android-arsenal.com/api?level=9) [![License](https://img.shields.io/npm/l/express.svg?style=flat-square)](https://opensource.org/licenses/MIT) [![Jitpack](https://jitpack.io/v/ihsanbal/SlidingIntoView.svg?style=flat-square)](https://jitpack.io/#ihsanbal/SlidingIntoView) [![Android Arsenal](https://img.shields.io/badge/Android%20Arsenal-SlidingIntoView-green.svg?style=flat-square)](https://android-arsenal.com/details/1/4534) 4 | 5 | ================ 6 | 7 | Simple Sliding Intro View 8 | 9 | ![Illustration of behavior](https://github.com/ihsanbal/SlidingIntoView/blob/master/device-2016-10-12-125715.gif "Illustration of behavior") 10 | 11 | 12 | How to use 13 | ---------- 14 | 15 | Import dependency using Gradle or Maven: 16 | 17 | ```groovy 18 | repositories { 19 | maven { 20 | url "https://jitpack.io" 21 | } 22 | } 23 | 24 | dependencies { 25 | compile 'com.github.ihsanbal:SlidingIntoView:1.0.1' 26 | } 27 | ``` 28 | or Maven: 29 | ```xml 30 | 31 | jitpack.io 32 | https://jitpack.io 33 | 34 | 35 | 36 | com.github.ihsanbal 37 | SlidingIntoView 38 | 1.0.1 39 | 40 | ``` 41 | 42 | Example implementation: 43 | 44 | ```xml 45 | 61 | ``` 62 | 63 | ```java 64 | mIntroView.init(getSupportFragmentManager(), 65 | getResources().getStringArray(R.array.titles), 66 | getResources().getStringArray(R.array.texts), 67 | R.drawable.istanbul_wp, R.drawable.rize_wp, R.drawable.diyarbekir_wp, R.drawable.izmir_wp,...); 68 | ``` 69 | 70 | 71 | Parameters: 72 | ----- 73 | 74 | You can control these parameters via XML: 75 | 76 | ``` 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | ``` 102 | 103 | 104 | Changelog 105 | --------- 106 | 107 | * 1.0.0 - initial release 108 | 109 | * 1.0.1 - text color bug fix 110 | 111 | 112 | License 113 | ---- 114 | 115 | Library for Android 116 | 117 | Copyright (c) 2015 İhsan BAL 118 | 119 | Permission is hereby granted, free of charge, to any person obtaining a copy 120 | of this software and associated documentation files (the "Software"), to deal 121 | in the Software without restriction, including without limitation the rights 122 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 123 | copies of the Software, and to permit persons to whom the Software is 124 | furnished to do so, subject to the following conditions: 125 | 126 | The above copyright notice and this permission notice shall be included in all 127 | copies or substantial portions of the Software. 128 | 129 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 130 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 131 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 132 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 133 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 134 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 135 | SOFTWARE. 136 | -------------------------------------------------------------------------------- /app/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/workspace.xml 5 | /.idea/libraries 6 | .DS_Store 7 | /build 8 | /captures 9 | .externalNativeBuild -------------------------------------------------------------------------------- /app/build.gradle: -------------------------------------------------------------------------------- 1 | apply plugin: 'com.android.application' 2 | apply plugin: 'android-apt' 3 | 4 | android { 5 | compileSdkVersion 25 6 | buildToolsVersion "25.0.2" 7 | defaultConfig { 8 | applicationId "com.ihsanbal.io" 9 | minSdkVersion 11 10 | targetSdkVersion 25 11 | versionCode 1 12 | versionName "1.0" 13 | testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 14 | } 15 | buildTypes { 16 | release { 17 | minifyEnabled false 18 | proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 19 | } 20 | } 21 | } 22 | 23 | repositories { 24 | maven { 25 | url "https://jitpack.io" 26 | } 27 | } 28 | 29 | dependencies { 30 | compile fileTree(dir: 'libs', include: ['*.jar']) 31 | testCompile 'junit:junit:4.12' 32 | androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { 33 | exclude group: 'com.android.support', module: 'support-annotations' 34 | }) 35 | compile 'me.relex:circleindicator:1.1.8@aar' 36 | compile 'com.android.support:appcompat-v7:25.1.0' 37 | compile 'com.jakewharton:butterknife:8.4.0' 38 | 39 | apt 'com.jakewharton:butterknife-compiler:8.4.0' 40 | compile project(':library') 41 | } 42 | -------------------------------------------------------------------------------- /app/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # By default, the flags in this file are appended to flags specified 3 | # in /Users/ihsan/Library/Android/sdk/tools/proguard/proguard-android.txt 4 | # You can edit the include path and order by changing the proguardFiles 5 | # directive in build.gradle. 6 | # 7 | # For more details, see 8 | # http://developer.android.com/guide/developing/tools/proguard.html 9 | 10 | # Add any project specific keep options here: 11 | 12 | # If your project uses WebView with JS, uncomment the following 13 | # and specify the fully qualified class name to the JavaScript interface 14 | # class: 15 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 16 | # public *; 17 | #} 18 | -------------------------------------------------------------------------------- /app/src/androidTest/java/com/ihsanbal/io/ExampleInstrumentedTest.java: -------------------------------------------------------------------------------- 1 | package com.ihsanbal.io; 2 | 3 | import android.content.Context; 4 | import android.support.test.InstrumentationRegistry; 5 | import android.support.test.runner.AndroidJUnit4; 6 | 7 | import org.junit.Test; 8 | import org.junit.runner.RunWith; 9 | 10 | import static org.junit.Assert.*; 11 | 12 | /** 13 | * Instrumentation test, which will execute on an Android device. 14 | * 15 | * @see Testing documentation 16 | */ 17 | @RunWith(AndroidJUnit4.class) 18 | public class ExampleInstrumentedTest { 19 | @Test 20 | public void useAppContext() throws Exception { 21 | // Context of the app under test. 22 | Context appContext = InstrumentationRegistry.getTargetContext(); 23 | 24 | assertEquals("com.ihsanbal.io", appContext.getPackageName()); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /app/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /app/src/main/java/com/ihsanbal/io/MainActivity.java: -------------------------------------------------------------------------------- 1 | package com.ihsanbal.io; 2 | 3 | import android.os.Bundle; 4 | import android.support.v7.app.AppCompatActivity; 5 | 6 | import com.ihsanbal.introview.IntroView; 7 | 8 | import butterknife.BindView; 9 | import butterknife.ButterKnife; 10 | import me.relex.circleindicator.CircleIndicator; 11 | 12 | public class MainActivity extends AppCompatActivity { 13 | 14 | @BindView(R.id.intro_view) 15 | IntroView mIntroView; 16 | @BindView(R.id.circle_indicator) 17 | CircleIndicator mCircleIndicator; 18 | 19 | @Override 20 | protected void onCreate(Bundle savedInstanceState) { 21 | super.onCreate(savedInstanceState); 22 | setContentView(R.layout.activity_main); 23 | ButterKnife.bind(this); 24 | mIntroView.setOffscreenPageLimit(3); 25 | mIntroView.init(getSupportFragmentManager(), 26 | getResources().getStringArray(R.array.titles), 27 | getResources().getStringArray(R.array.texts), 28 | R.drawable.istanbul_wp, 29 | R.drawable.rize_wp, 30 | R.drawable.diyarbekir_wp, 31 | R.drawable.izmir_wp); 32 | mCircleIndicator.setViewPager(mIntroView); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/diyarbekir_wp.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ihsanbal/SlidingIntoView/10c14f578d1371c4d14049d3441c92c6c1fb77b2/app/src/main/res/drawable/diyarbekir_wp.jpg -------------------------------------------------------------------------------- /app/src/main/res/drawable/istanbul_wp.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ihsanbal/SlidingIntoView/10c14f578d1371c4d14049d3441c92c6c1fb77b2/app/src/main/res/drawable/istanbul_wp.jpg -------------------------------------------------------------------------------- /app/src/main/res/drawable/izmir_wp.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ihsanbal/SlidingIntoView/10c14f578d1371c4d14049d3441c92c6c1fb77b2/app/src/main/res/drawable/izmir_wp.jpeg -------------------------------------------------------------------------------- /app/src/main/res/drawable/rize_wp.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ihsanbal/SlidingIntoView/10c14f578d1371c4d14049d3441c92c6c1fb77b2/app/src/main/res/drawable/rize_wp.jpg -------------------------------------------------------------------------------- /app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 9 | 10 | 25 | 26 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ihsanbal/SlidingIntoView/10c14f578d1371c4d14049d3441c92c6c1fb77b2/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ihsanbal/SlidingIntoView/10c14f578d1371c4d14049d3441c92c6c1fb77b2/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ihsanbal/SlidingIntoView/10c14f578d1371c4d14049d3441c92c6c1fb77b2/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ihsanbal/SlidingIntoView/10c14f578d1371c4d14049d3441c92c6c1fb77b2/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ihsanbal/SlidingIntoView/10c14f578d1371c4d14049d3441c92c6c1fb77b2/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/values-v19/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | -------------------------------------------------------------------------------- /app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 64dp 6 | 7 | -------------------------------------------------------------------------------- /app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #ff3333 4 | #d92323 5 | #ffff40 6 | 7 | -------------------------------------------------------------------------------- /app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 6 | -------------------------------------------------------------------------------- /app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | SlidingIntoView 3 | 4 | 5 | İstanbul 6 | Rize 7 | Diyarbekir 8 | İzmir 9 | 10 | 11 | 12 | İstanbul, Türkiye\'de yer alan şehir ve ülkenin 81 ilinden biri. Ülkenin en kalabalık, ekonomik ve sosyo-kültürel açıdan en önemli şehridir. 13 | Rize, Karadeniz Bölgesi\'nin Doğu Karadeniz bölümünde yer alan bir şehirdir. Doğuda Çayeli ve Güneysu ile, güneyde İkizdere, batıda Derepazarı ve Kalkandere, kuzeyde Karadeniz ile çevrilidir. 14 | Diyarbakır, Türkiye\'nin bir ili ve en kalabalık on ikinci şehri. TÜİK ADNKS verilerine göre 2014 itibarıyla 1.635.048 nüfusa sahiptir. Diyarbakır kent merkezi yaklaşık 9000 yıllık bir geçmişe sahiptir. 15 | İzmir, Türkiye\'nin bir ili ve en kalabalık üçüncü şehri. Anadolu Yarımadası\'nın batısında, Ege Bölgesi\'nin ortasında yer alan ve İzmir Körfezi çevresinde bulunan şehir, her yıl İzmir ... 16 | 17 | 18 | -------------------------------------------------------------------------------- /app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 |