TapTargetView#
Provide value and improve engagement by introducing users to new
features and functionality at relevant moments. Sets the position of the widget relative to the floating circle. If you use You can use the following options to control font size, color, and boldness: But you can also use markup to set these values. Note See other parameters in the
Usage#
from kivy.lang import Builder
from kivymd.app import MDApp
from kivymd.uix.taptargetview import MDTapTargetView
KV = '''
Screen:
MDFloatingActionButton:
id: button
icon: "plus"
pos: 10, 10
on_release: app.tap_target_start()
'''
class TapTargetViewDemo(MDApp):
def build(self):
screen = Builder.load_string(KV)
self.tap_target_view = MDTapTargetView(
widget=screen.ids.button,
title_text="This is an add button",
description_text="This is a description of the button",
widget_position="left_bottom",
)
return screen
def tap_target_start(self):
if self.tap_target_view.state == "close":
self.tap_target_view.start()
else:
self.tap_target_view.stop()
TapTargetViewDemo().run()
Widget position#
self.tap_target_view = MDTapTargetView(
...
widget_position="right",
)
self.tap_target_view = MDTapTargetView(
...
widget_position="left",
)
self.tap_target_view = MDTapTargetView(
...
widget_position="top",
)
self.tap_target_view = MDTapTargetView(
...
widget_position="bottom",
)
self.tap_target_view = MDTapTargetView(
...
widget_position="left_top",
)
self.tap_target_view = MDTapTargetView(
...
widget_position="right_top",
)
self.tap_target_view = MDTapTargetView(
...
widget_position="left_bottom",
)
self.tap_target_view = MDTapTargetView(
...
widget_position="right_bottom",
)
the widget_position = "center"
parameter then you must
definitely specify the title_position
.self.tap_target_view = MDTapTargetView(
...
widget_position="center",
title_position="left_top",
)
Text options#
self.tap_target_view = MDTapTargetView(
...
title_text="Title text",
description_text="Description text",
)
self.tap_target_view = MDTapTargetView(
...
title_text="Title text",
title_text_size="36sp",
description_text="Description text",
description_text_color=[1, 0, 0, 1]
)
self.tap_target_view = MDTapTargetView(
...
title_text="[size=36]Title text[/size]",
description_text="[color=#ff0000ff]Description text[/color]",
)
Events control#
self.tap_target_view.bind(on_open=self.on_open, on_close=self.on_close)
def on_open(self, instance_tap_target_view):
'''Called at the time of the start of the widget opening animation.'''
print("Open", instance_tap_target_view)
def on_close(self, instance_tap_target_view):
'''Called at the time of the start of the widget closed animation.'''
print("Close", instance_tap_target_view)
MDTapTargetView
class.
API - kivymd.uix.taptargetview
#
- class kivymd.uix.taptargetview.MDTapTargetView(**kwargs)#
Rough try to mimic the working of Android’s TapTargetView.
- Events:
- widget#
Widget to add
TapTargetView
upon.widget
is anObjectProperty
and defaults to None.
- outer_radius#
Radius for outer circle.
outer_radius
is anNumericProperty
and defaults to dp(200).
- outer_circle_color#
Color for the outer circle in
rgb
format.self.tap_target_view = MDTapTargetView( ... outer_circle_color=(1, 0, 0) )
outer_circle_color
is anListProperty
and defaults totheme_cls.primary_color
.
- outer_circle_alpha#
Alpha value for outer circle.
outer_circle_alpha
is anNumericProperty
and defaults to 0.96.
- target_radius#
Radius for target circle.
target_radius
is anNumericProperty
and defaults to dp(45).
- target_circle_color#
Color for target circle in
rgb
format.self.tap_target_view = MDTapTargetView( ... target_circle_color=(1, 0, 0) )
target_circle_color
is anListProperty
and defaults to [1, 1, 1].
- title_text#
Title to be shown on the view.
title_text
is anStringProperty
and defaults to ‘’.
- title_text_size#
Text size for title.
title_text_size
is anNumericProperty
and defaults to dp(25).
- title_text_color#
Text color for title.
title_text_color
is anListProperty
and defaults to [1, 1, 1, 1].
- title_text_bold#
Whether title should be bold.
title_text_bold
is anBooleanProperty
and defaults to True.
- description_text#
Description to be shown below the title (keep it short).
description_text
is anStringProperty
and defaults to ‘’.
- description_text_size#
Text size for description text.
description_text_size
is anNumericProperty
and defaults to dp(20).
- description_text_color#
Text size for description text.
description_text_color
is anListProperty
and defaults to [0.9, 0.9, 0.9, 1].
- description_text_bold#
Whether description should be bold.
description_text_bold
is anBooleanProperty
and defaults to False.
- draw_shadow#
Whether to show shadow.
draw_shadow
is anBooleanProperty
and defaults to False.
- cancelable#
Whether clicking outside the outer circle dismisses the view.
cancelable
is anBooleanProperty
and defaults to False.
- widget_position#
Sets the position of the widget on the
outer_circle
. Available options are ‘left’, ‘right’, ‘top’, ‘bottom’, ‘left_top’, ‘right_top’, ‘left_bottom’, ‘right_bottom’, ‘center’.widget_position
is anOptionProperty
and defaults to ‘left’.
- title_position#
Sets the position of :attr`~title_text` on the outer circle. Only works if :attr`~widget_position` is set to ‘center’. In all other cases, it calculates the :attr`~title_position` itself. Must be set to other than ‘auto’ when :attr`~widget_position` is set to ‘center’.
Available options are ‘auto’, ‘left’, ‘right’, ‘top’, ‘bottom’, ‘left_top’, ‘right_top’, ‘left_bottom’, ‘right_bottom’, ‘center’.
title_position
is anOptionProperty
and defaults to ‘auto’.
- stop_on_outer_touch#
Whether clicking on outer circle stops the animation.
stop_on_outer_touch
is anBooleanProperty
and defaults to False.
- stop_on_target_touch#
Whether clicking on target circle should stop the animation.
stop_on_target_touch
is anBooleanProperty
and defaults to True.
- state#
State of
MDTapTargetView
.state
is anOptionProperty
and defaults to ‘close’.
- start(self, *args)#
Starts widget opening animation.
- stop(self, *args)#
Starts widget close animation.
- on_open(self, *args)#
Called at the time of the start of the widget opening animation.
- on_close(self, *args)#
Called at the time of the start of the widget closed animation.
- on_draw_shadow(self, instance, value)#
- on_description_text(self, instance, value)#
- on_description_text_size(self, instance, value)#
- on_description_text_bold(self, instance, value)#
- on_title_text(self, instance, value)#
- on_title_text_size(self, instance, value)#
- on_title_text_bold(self, instance, value)#
- on_outer_radius(self, instance, value)#
- on_target_radius(self, instance, value)#
- on_target_touch(self)#
- on_outer_touch(self)#
- on_outside_click(self)#