ça fait longtemps. Cette fois, je voudrais expliquer SwipeBack. L'iPhone a cette fonctionnalité dans le navigateur par défaut, mais pas Android. Sur Android, il est normal d'appuyer sur le "bouton retour" en bas à gauche pour revenir à l'écran précédent, mais il est implémenté dans des applications telles que Gnocy et Smart News. Depuis que je crée une application de système d'information, lorsque je l'ai implémentée, j'ai senti qu'il serait plus pratique de revenir en arrière, j'ai donc écrit un article. Je publierai l'URL de ce à quoi il ressemble réellement, donc si vous ne le savez pas, veuillez le vérifier. https://media.giphy.com/media/3dcKwpfcH50vAITwWy/giphy.gif
Ouvrez build.gradle (Module: app) dans les scripts Gradle
build.gradle
//Partie supérieure omise
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
//noinspection GradleCompatible
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
//Ajouter ici
implementation 'com.r0adkll:slidableactivity:2.0.6'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}
Veuillez ajouter cette partie. Si vous ne l'ajoutez pas en premier, vous ne pourrez pas utiliser ** l'interface Slider ** que vous utiliserez plus tard, alors assurez-vous de l'ajouter. Je comprends les bases! !! Si vous êtes intéressé, veuillez vérifier à partir de STEP3.
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical"
tools:context=".MainActivity">
<Button
android:id="@+id/openActivity2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="Onclick"
android:text="Open Activity 2"
tools:ignore="OnClick" />
</LinearLayout>
LinearLayout est une mise en page organisée sur une ligne horizontale ou une ligne verticale. Button place le bouton.
Créez une autre activité. Nommez-le activity_one.xml.
activity_one.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".ActivityOne">
<ImageView
android:src="@drawable/another_activity_img"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</RelativeLayout>
ImageView organise l'image pour vous. Dans ce cas, l'image rouge que vous avez créée vous-même sera affichée.
Je suis prêt. Allons-y ensuite.
Activez le bouton dans MainActivity.
ActivityMain.java
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class MainActivity extends AppCompatActivity implements View.OnClickListener{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btn = findViewById(R.id.openActivity2);
btn.setOnClickListener(this);
}
@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this, ActivityOne.class);
startActivity(intent);
}
}
En activant ** OnClick **, l'écran passera à l'activité 1. Pour l'expliquer très simplement, vous pouvez passer de l'écran actuel à un autre écran en utilisant ** Intent **. Si vous n'êtes pas sûr du traitement des intentions, veuillez vous reporter ici.
https://techacademy.jp/magazine/2719
Vient ensuite l'édition de la première activité.
ActivityOne.java
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
public class ActivityOne extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_one);
}
}
Vous avez maintenant une transition d'écran simple.
Voici l'explication. Dans "Introduction" implementation 'com.r0adkll:slidableactivity:2.0.6' En ajoutant, vous pouvez utiliser une classe appelée SliderInterface. Je vais le décrire dans ActivityOne.
ActivityOne.java
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.transition.Slide;
import android.view.View;
import com.r0adkll.slidr.Slidr;
import com.r0adkll.slidr.model.SlidrInterface;
public class ActivityOne extends AppCompatActivity {
//Ajouter ici
private SlidrInterface slidr;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_one);
//Ajouter ici
slidr = Slidr.attach(this);
}
}
styles.xml
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
//Ajouter à partir d'ici
<style name="AppTheme.SlidrActivityTheme" parent="AppTheme">
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
</style>
</resources>
Enfin, modifiez manifests.xml et vous avez terminé.
manimests.xml
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".ActivityOne"
android:theme="@style/AppTheme.SlidrActivityTheme"/>
</application>
Ajoutez le thème SliderActivityTheme créé précédemment à **. ActivityOne ** et vous avez terminé.
slidr = Slidr.attach(this);
Je ne pouvais pas bien expliquer cette partie. Si quelqu'un sait, veuillez commenter. Plus tard, j'aimerais publier la source sur github.
L'URL du site à laquelle j'ai fait référence cette fois https://www.youtube.com/watch?v=h-74bLrng2M
C'était facile à comprendre car il a été réalisé en suivant la procédure avec une vidéo.