[JAVA] J'ai créé une bibliothèque pour afficher des tutoriels sur Android.

Il s'agit de la bibliothèque enregistrée précédemment ici Créer et publier une bibliothèque Android --Qiita. La bibliothèque elle-même a été terminée il y a quelque temps, mais il était difficile de la télécharger et de résumer comment l'utiliser. Il n'y a pas de bonne bibliothèque de didacticiels Android. Alors fais-le. GitHub est ici.

Ce sera un remake de ce que nous avons créé dans notre application pour la bibliothèque. Il est fait par kotlin, mais bien sûr, vous pouvez l'utiliser avec java.

À propos de la bibliothèque essentielle

C'est le bon.

sample_tutorial.gif

Points à prendre en compte lors de la fabrication

C'est parfait! Je ne peux pas dire ça même si ma bouche est déchirée, mais je l'ai fait avec ce qui suit à l'esprit.

-Réduire les dépendances de la bibliothèque

En raison d'une récente mise à jour massive de la bibliothèque, nous avons eu de nombreuses erreurs de dépendance dans notre application. De plus, il est difficile de comprendre le contenu de l'erreur. Alors, à quel point vouliez-vous détruire l'environnement? Le résultat est une tempête de ʻexclude module: hogehoge`.

Dans cet esprit, cette bibliothèque a les dépendances suivantes.

build.gradle


dependencies {
    implementation 'com.android.support:appcompat-v7:27.1.1'
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"

}

・ Rendez-le aussi simple que possible à afficher.

Afin d'éviter de s'inquiéter du moment de la génération du didacticiel, le didacticiel est publié une fois que la vue cible a été dessinée.

La valeur d'affichage peut être définie dans le modèle de générateur. Il y a un problème que les propriétés requises pour le paramètre n'ont pas encore été intégrées, mais.

Comment utiliser

Si vous l'utilisez facilement

--Ajoutez ce qui suit aux dépendances

build.gradle


dependencies {
	implementation 'jp.studio.edamame:balloontutorial:0.2.2'
}
TutorialBuilder.init(activituy, target = binding.buttonTutorialCircle)
        .holeType(TutorialBuilder.HoleType.CIRCLE)
        .radiusOfDp(50f)
        .descriptionByString("Circle type")
        .buildAndLayout() //dessin

Vous pouvez l'utiliser si vous définissez la valeur de cette manière.

Paramètre avancé

Initialiser le générateur

TutorialBuilder.init(activituy, target = targetView)

Initialisez avec .init (activité, targetView).

Spécifiez la forme de mise en évidence cible

.holeType(type: TutorialBuilder.HoleType)

--Carré

.holeType(TutorialBuilder.HoleType.SQUARE)
.holeType(TutorialBuilder.HoleType.CIRCLE)
.radiusOfDp(50f) //Spécifiez le rayon s'il est circulaire(dp)

Définir l'éruption

.descriptionByString("La description va") //Lettre de ballon
.textColor(@ColorInt color: Int) //Couleur de la lettre
.balloonColor(@ColorInt color: Int) //Couleur éclatée

Spécifier le comportement du robinet

.onClickedOutSide { } //Lorsqu'il est touché en dehors de la cible
.onClickedTarget { } //Lorsque la cible est touchée

Spécifiez la durée de l'animation

--Spécifié par msec

.durationForBaseAnimation(150) //Afficher le fond
.durationForHoleAnimation(300) //Afficher les faits saillants
.durationForBalloonTextAnimation(200) //Éteindre

fin

Je pense ajouter un mécanisme qui me permettra de publier des tutoriels d'affilée. c'est tout.

Recommended Posts

J'ai créé une bibliothèque pour afficher des tutoriels sur Android.
J'ai créé une application de calculatrice sur Android
J'ai créé une bibliothèque de graphiques simple pour les applications de smartphone [MP Android Chart Kai]
J'ai créé une application correspondante (application Android)
[Android] J'ai créé une application de podomètre.
J'ai créé un plug-in pour IntelliJ IDEA
J'ai créé une application Janken avec Android
J'ai créé un outil Diff pour les fichiers Java
J'ai créé une application Android pour le service MiRm
J'ai créé une bibliothèque d'extension Ruby en C
J'ai fait un portfolio avec Ruby On Rails
[Android] Je souhaite créer un ViewPager pouvant être utilisé pour les didacticiels
Android: j'ai eu du mal à afficher le fichier HTML sur la carte SD
J'ai créé une image Docker pour la version japonaise de SDAPS
J'ai créé un outil de vérification pour le module de version
J'ai fait une méthode pour demander la prime vendredi
J'ai fait un chat de dessin "chat de peinture 8 bits" avec WebAssembly
J'ai créé une bibliothèque qui fonctionne comme un onglet dans Safari !!
[Android Studio] Je souhaite utiliser une bibliothèque Maven sur Android
Bibliothèque de transmission en plusieurs parties sur Android
J'ai créé une application de chat.
J'ai essayé d'ajouter une ligne de séparation à TabLayout sur Android
Intel Multi-OS Engine (MOE), une bibliothèque multiplateforme pour Android et iOS
J'ai créé une application shopify @java
J'ai créé une interface graphique avec Swing
J'ai créé une fonction de réponse pour l'extension Rails Tutorial (Partie 1)
Une collection de bibliothèques utiles dans le développement Android
J'ai posé une question qui peut être utilisée pour des entretiens techniques
Création d'une méthode pour demander Premium Friday (version Java 8)
J'ai fait une simple fonction de recommandation.
J'ai créé une fonction de réponse pour l'extension Rails Tutorial (Partie 5):
J'ai créé un outil de génération package.xml.
J'avais des problèmes au travail, j'ai donc créé un plug-in IntelliJ
J'ai créé une fonction de réponse pour l'extension Rails Tutorial (Partie 2): Changer de modèle
J'ai créé un site qui résume les informations sur la restriction du sucre avec Vue.js
[Ruby] J'ai créé un simple client Ping
Mémorandum des débutants en développement d'applications Android
Remarques sur la création d'un plug-in Android pour Unity
J'ai fait une méthode pour le vendredi premium avec une doublure
J'ai fait une mort risquée avec Ruby
J'ai créé une application Janken avec kotlin
J'ai créé un nouvel outil de déploiement Java
J'ai une question sur le studio Android.
Création d'une bibliothèque de routage multifonctionnelle pour Android qui prend également en charge l'élément partagé --MoriRouter
J'ai créé un client API THETA qui peut être utilisé pour le développement de plugins
J'ai créé un programme de jugement des nombres premiers en Java
04. J'ai fait un frontal avec SpringBoot + Thymeleaf
J'ai fait de l'art de la mosaïque avec des images Pokemon
J'ai créé une application par moi-même! (Application de gestion de la lecture)
J'ai créé un jeu Janken en Java (CLI)
J'ai créé une application de visualisation qui affiche le PDF
J'ai créé un conteneur Docker pour exécuter Maven
Trébucher avec Android DataBinding + Kotlin (plus BindingAdapter)
[Rails] J'ai créé une fonction de brouillon en utilisant enum