Uma simples biblioteca baseada no PopupWindow para criação de Tooltips em Android.
- Trabalha a partir do Android 2.1 (API 7) Obs: animação acima do 3.0 (API 11)
- Uso simplificado: poucos parâmetros em uma única linha de código
- Animação com controle de velocidade e tamanho
- Opção para fechar com toque dentro ou fora do tooltip
- Modo modal (impede o toque nos componentes do background)
- Overlay (escurece o fundo dando destaque no componente âncora)
- Personalização da seta (arrow)
- Conteúdo inflável a partir de uma
Viewou umXMLde layout - Cores e dimenções customizadas via
BuilderouXMLsde resources
View yourView = findViewById(R.id.your_view);
new SimpleTooltip.Builder(this)
.anchorView(yourView)
.text("Texto do Tooltip")
.gravity(Gravity.END)
.animated(true)
.transparentOverlay(false)
.build()
.show();<color name="simpletooltip_background">@color/colorAccent</color>
<color name="simpletooltip_text">@android:color/primary_text_light</color>
<color name="simpletooltip_arrow">@color/colorAccent</color><dimen name="simpletooltip_max_width">150dp</dimen>
<dimen name="simpletooltip_overlay_offset">10dp</dimen>
<dimen name="simpletooltip_margin">10dp</dimen>
<dimen name="simpletooltip_padding">8dp</dimen>
<dimen name="simpletooltip_arrow_width">30dp</dimen>
<dimen name="simpletooltip_arrow_height">15dp</dimen>
<dimen name="simpletooltip_animation_padding">4dp</dimen><integer name="simpletooltip_overlay_alpha">120</integer>
<integer name="simpletooltip_animation_duration">800</integer><style name="simpletooltip_default" parent="@android:style/TextAppearance.Medium"></style>Para mais informações, confira o projeto de exemplo e o javadoc.
-
Adicione em seu arquivo raiz
build.gradleao final dos repositórios:allprojects { repositories { ... maven { url "https://jitpack.io" } } }
-
Adicione a dependência
dependencies { compile 'com.github.douglasjunior:android-simple-tooltip:0.2.2' }
dependencies {
compile('com.github.douglasjunior:android-simple-tooltip:master-SNAPSHOT') {
changing = true // Gradle irá checar por atualizações a cada 24 horas
}
}Novas funcionalidades, correções de bug e melhorias na tradução serão bem vindas! Para dúvidas e sugestões utilize as issues.
Antes de enviar seu PR, execute a checagem do gradle.
./gradlew build connectedCheck-
Se fechar a
Dialog/Activitysem que a Tooltip seja encerrada, pode ocorrer o errojava.lang.IllegalArgumentException: Could not lock surface. Este erro ocorre devido a animação continuar após o fechamento daDialog/Activity. (Este erro não afeta no funcionamento do programa.) -
Se chamar
tooltip.show()após aActivity/Dialogser encerrada, pode ocorrer o erroandroid.view.WindowLeaked: Activity has leaked window android.widget.PopupWindow$PopupViewContainer that was originally added here. Leia mais. (Este erro não afeta no funcionamento do programa.) -
À partir da API 24 o Android mudou o comportamento da
PopupWindowem relação a propriedadesetClippingEnabled, isso faz com que a Popup possa ficar cortada se não couber na tela. Leia mais.
The MIT License (MIT)
Copyright (c) 2016 Douglas Nassif Roma JuniorVeja o arquivo de licença completo.

