kandi background
Explore Kits

TapTargetView | tap targets from the Material Design guidelines | User Interface library

 by   KeepSafe Java Version: 1.13.2 License: Apache-2.0

 by   KeepSafe Java Version: 1.13.2 License: Apache-2.0

Download this library from

kandi X-RAY | TapTargetView Summary

TapTargetView is a Java library typically used in User Interface, Angular applications. TapTargetView has no bugs, it has no vulnerabilities, it has build file available, it has a Permissive License and it has medium support. You can download it from GitHub, Maven.
An implementation of tap targets from the Material Design guidelines for feature discovery.
Support
Support
Quality
Quality
Security
Security
License
License
Reuse
Reuse

kandi-support Support

  • TapTargetView has a medium active ecosystem.
  • It has 5030 star(s) with 561 fork(s). There are 126 watchers for this library.
  • It had no major release in the last 12 months.
  • There are 42 open issues and 241 have been closed. On average issues are closed in 37 days. There are 3 open pull requests and 0 closed requests.
  • It has a neutral sentiment in the developer community.
  • The latest version of TapTargetView is 1.13.2
TapTargetView Support
Best in #User Interface
Average in #User Interface
TapTargetView Support
Best in #User Interface
Average in #User Interface

quality kandi Quality

  • TapTargetView has 0 bugs and 0 code smells.
TapTargetView Quality
Best in #User Interface
Average in #User Interface
TapTargetView Quality
Best in #User Interface
Average in #User Interface

securitySecurity

  • TapTargetView has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
  • TapTargetView code analysis shows 0 unresolved vulnerabilities.
  • There are 0 security hotspots that need review.
TapTargetView Security
Best in #User Interface
Average in #User Interface
TapTargetView Security
Best in #User Interface
Average in #User Interface

license License

  • TapTargetView is licensed under the Apache-2.0 License. This license is Permissive.
  • Permissive licenses have the least restrictions, and you can use them in most projects.
TapTargetView License
Best in #User Interface
Average in #User Interface
TapTargetView License
Best in #User Interface
Average in #User Interface

buildReuse

  • TapTargetView releases are available to install and integrate.
  • Deployable package is available in Maven.
  • Build file is available. You can build the component from source.
  • Installation instructions, examples and code snippets are available.
  • TapTargetView saves you 851 person hours of effort in developing the same functionality from scratch.
  • It has 1952 lines of code, 174 functions and 25 files.
  • It has high code complexity. Code complexity directly impacts maintainability of the code.
TapTargetView Reuse
Best in #User Interface
Average in #User Interface
TapTargetView Reuse
Best in #User Interface
Average in #User Interface
Top functions reviewed by kandi - BETA

kandi has reviewed TapTargetView and discovered the below as its top functions. This is intended to give you an instant insight into TapTargetView implemented functionality, and help decide if they suit your requirements.

  • Apply the target options .
  • Draw the circle
  • Finds the overflow view of the given instance .
  • Try to find a view via the toolbar .
  • Run the runnable in the View .
  • Start at the given index .
  • Get a typed attribute .
  • Start tap with specified id .
  • Build the ValueAnimator .
  • Removes a view from the parent and its child group .

TapTargetView Key Features

An implementation of tap targets from the Material Design guidelines for feature discovery.

copy iconCopydownload iconDownload
TapTargetView

Installation

copy iconCopydownload iconDownload
   repositories { 
        mavenCentral()
   }
   
   dependencies {
         implementation 'com.getkeepsafe.taptargetview:taptargetview:x.x.x'
   }

Simple usage

copy iconCopydownload iconDownload
TapTargetView.showFor(this,                 // `this` is an Activity
    TapTarget.forView(findViewById(R.id.target), "This is a target", "We have the best targets, believe me")
        // All options below are optional
        .outerCircleColor(R.color.red)      // Specify a color for the outer circle
	.outerCircleAlpha(0.96f)            // Specify the alpha amount for the outer circle
        .targetCircleColor(R.color.white)   // Specify a color for the target circle
        .titleTextSize(20)                  // Specify the size (in sp) of the title text
        .titleTextColor(R.color.white)      // Specify the color of the title text
        .descriptionTextSize(10)            // Specify the size (in sp) of the description text
        .descriptionTextColor(R.color.red)  // Specify the color of the description text
        .textColor(R.color.blue)            // Specify a color for both the title and description text
        .textTypeface(Typeface.SANS_SERIF)  // Specify a typeface for the text
        .dimColor(R.color.black)            // If set, will dim behind the view with 30% opacity of the given color
        .drawShadow(true)                   // Whether to draw a drop shadow or not
        .cancelable(false)                  // Whether tapping outside the outer circle dismisses the view
        .tintTarget(true)                   // Whether to tint the target view's color
        .transparentTarget(false)           // Specify whether the target is transparent (displays the content underneath)
        .icon(Drawable)                     // Specify a custom drawable to draw as the target
        .targetRadius(60),                  // Specify the target radius (in dp)
    new TapTargetView.Listener() {          // The listener can listen for regular clicks, long clicks or cancels
        @Override
        public void onTargetClick(TapTargetView view) {
            super.onTargetClick(view);      // This call is optional
            doSomething();
        }
    });

Sequences

copy iconCopydownload iconDownload
new TapTargetSequence(this)
    .targets(
        TapTarget.forView(findViewById(R.id.never), "Gonna"),
        TapTarget.forView(findViewById(R.id.give), "You", "Up")
                .dimColor(android.R.color.never)
                .outerCircleColor(R.color.gonna)
                .targetCircleColor(R.color.let)
                .textColor(android.R.color.you),
        TapTarget.forBounds(rickTarget, "Down", ":^)")
                .cancelable(false)
                .icon(rick))
    .listener(new TapTargetSequence.Listener() {
        // This listener will tell us when interesting(tm) events happen in regards
        // to the sequence
        @Override
        public void onSequenceFinish() {
            // Yay
        }
        
        @Override
        public void onSequenceStep(TapTarget lastTarget, boolean targetClicked) {
            // Perform action for the current target
        }

        @Override
        public void onSequenceCanceled(TapTarget lastTarget) {
            // Boo
        }
    });

License

copy iconCopydownload iconDownload
Copyright 2016 Keepsafe Software Inc.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Community Discussions

Trending Discussions on TapTargetView
  • how can I connect classes in KivyMD, python
  • Entry name 'javax/annotation/CheckReturnValue.java' collided Generate Debug apk
  • Kivy Apk Buildozer : ReferenceError: weakly-referenced object no longer exists
Trending Discussions on TapTargetView

QUESTION

how can I connect classes in KivyMD, python

Asked 2021-Jan-07 at 18:16

I try to make an app as a questionary, I dont know how to figure this error out.

AttributeError: 'CustomItem' object has no attribute 'delete_item'

I know what does it mean, that CustomItem is another class so it hasnt that def, but when i copied that def into CustomItem class, it hasnt object panel. So is it possible to connect another class ?

main.py

import kivy
kivy.require('1.11.1')

from helpers import screen_helper

from kivy.uix.screenmanager import Screen, ScreenManager
from kivymd.app import MDApp
from kivymd.uix.button import MDFillRoundFlatButton,MDFloatingActionButton, MDRectangleFlatButton, MDFloatingActionButtonSpeedDial, MDFlatButton, MDRoundFlatButton
from kivy.uix.image import Image
from kivy.lang import Builder
from kivy.uix.floatlayout import FloatLayout
from kivymd.uix.boxlayout import BoxLayout, MDBoxLayout
from kivymd.uix.toolbar import MDToolbar
from kivy.core.window import Window
from kivymd.uix.dialog import MDDialog
from kivymd.uix.taptargetview import MDTapTargetView
from kivymd.uix.menu import MDDropdownMenu, RightContent
from kivy.uix.dropdown import DropDown
from kivymd.uix.list import OneLineAvatarIconListItem
from kivymd.uix.label import MDLabel
from kivymd.uix.textfield import MDTextField
from kivymd.uix.snackbar import Snackbar
from kivymd.uix.card import MDSeparator
from kivymd.uix.list import MDList
from kivy.uix.scrollview import ScrollView
from kivymd.uix.floatlayout import MDFloatLayout
from kivy.properties import ObjectProperty
from kivy.core.window import Window
from kivymd.uix.gridlayout import GridLayout
from kivymd.uix.expansionpanel import MDExpansionPanel,MDExpansionPanelOneLine
from kivymd.uix.list import StringProperty,ThreeLineAvatarIconListItem
from kivy.properties import BooleanProperty
from kivymd.theming import ThemableBehavior
from kivymd.uix.bottomsheet import MDListBottomSheet
from kivy.factory import Factory
from kivymd.toast import toast
from kivy.animation import Animation

class ItemConfirm(OneLineAvatarIconListItem):
    divider = None

    def set_icon(self, choice):
        choice.active = True
        check_list = choice.get_widgets(choice.group)
        for check in check_list:
            if check != choice:
                check.active = False

class HomeScreen(Screen):
    choose_dialog= None
    choice = None
    help_dialog= None

    def show_ChooseDialog(self):
        if not self.choose_dialog:
            self.choose_dialog = MDDialog(title="Test zameraný pre:", type="confirmation",
                    size_hint=[0.9, 0.5], auto_dismiss=False,
                    items=[ItemConfirm(text="osobné zlepšenie",on_release= self.next_page_me,
                                       on_press= self.close_choose_dialog,),
                            ItemConfirm(text="prácu v tíme", on_release= self.next_page_team,
                                        on_press= self.close_choose_dialog, ),
                            ItemConfirm(text="osobné vzťahy",on_release= self.next_page_we,
                                        on_press= self.close_choose_dialog,)],)
            self.choose_dialog.open()


    def close_choose_dialog(self, obj):
        self.choose_dialog.dismiss()
        print(self.choose_dialog.items)

    def next_page_me (self,obj):
        self.manager.current = "motivationme"
    def next_page_team (self,obj):
        self.manager.current = "motivationteam"
    def next_page_we (self,obj):
        self.manager.current = "motivationwe"

    def show_HelpDialog(self):
        ok_button = MDRectangleFlatButton (text= "Rozummiem",on_release=self.close_help_dialog)
        self.help_dialog = MDDialog(title="O čo v teste ide?", text="obkec",
                              size_hint=[0.8, 0.5], auto_dismiss=False,
                              buttons=[ok_button])
        self.help_dialog.open()

    def close_help_dialog(self,obj):
        self.help_dialog.dismiss()

    def main_navigate(self, button):
        if button.icon == "home":
            self.manager.current = "home"
        elif button.icon == "lightning-bolt":
            self.manager.current = "goals"
        elif button.icon == "notebook":
            self.manager.current = "history"

class MotivationScreenMe(Screen):

    def main_navigate(self, button):
        if button.icon == "home":
            self.manager.current = "home"
        elif button.icon == "lightning-bolt":
            self.manager.current = "goals"
        elif button.icon == "notebook":
            self.manager.current = "history"

    def test_name(self):
        subor = open("package.txt", "w")
        subor.write(self.ids.nazov_testu.text)


class MotivationScreenTeam(Screen):
    nazov = ObjectProperty(None)
    nazov_testu = ObjectProperty(None)
    created= ObjectProperty(None)

    def main_navigate(self, button):
        if button.icon == "home":
            self.manager.current = "home"
        elif button.icon == "lightning-bolt":
            self.manager.current = "goals"
        elif button.icon == "notebook":
            self.manager.current = "history"

    def test_name(self):
        subor = open("package.txt", "w")
        subor.write(self.ids.nazov_testu.text)

class MotivationScreenWe(Screen):
    nazov = ObjectProperty(None)
    nazov_testu = ObjectProperty(None)

    def main_navigate(self, button):
        if button.icon == "home":
            self.manager.current = "home"
        elif button.icon == "lightning-bolt":
            self.manager.current = "goals"
        elif button.icon == "notebook":
            self.manager.current = "history"

    def test_name(self):
        subor = open("package.txt", "w")
        subor.write(self.ids.nazov_testu.text)

class TestConfirm(OneLineAvatarIconListItem):
    divider = None

    def set_icon(self, choice):
        choice.active = True
        check_list = choice.get_widgets(choice.group)
        for check in check_list:
            if check != choice:
                check.active = False

class TestScreenV(Screen):

    snackbar = None
    p = 0
    r = 0
    def show_example_snackbar(self):
        if not self.snackbar:
            self.snackbar = Snackbar(text="Pokračovať na druhý test?",
                                        snackbar_x="10dp",
                                        snackbar_y="10dp",
                                     bg_color= (0.96,0.79,0.09, 1),)
            self.snackbar.size_hint_x = ( Window.width -
                                          (self.snackbar.snackbar_x * 2)) / Window.width
            self.snackbar.buttons = [MDFlatButton(text="Áno",text_color=(1, 1, 1, 1),
                                                  on_release=self.evaluate,
                                                  on_press= self.snackbar.dismiss),]
            self.snackbar.open()

    def evaluate (self,obj):
        self.manager.current= "testm"
        self.manager.transition.direction = 'left'

    def plus(self):
        self.p = self.p +4.16
        self.ids.progress.value = self.p

class TestScreenM(Screen):
    snackbar = None
    p = 0
    r = 0
    def show_example_snackbar(self):
        if not self.snackbar:
            self.snackbar = Snackbar(text="Naozaj ukončiť ?",
                                        snackbar_x="10dp",
                                        snackbar_y="10dp",
                                     bg_color= (0.96,0.79,0.09, 1),)
            self.snackbar.size_hint_x = ( Window.width -
                                          (self.snackbar.snackbar_x * 2)) / Window.width
            self.snackbar.buttons = [MDFlatButton(text="Uložiť",text_color=(1, 1, 1, 1),
                                                  on_release=self.evaluate,
                                                  on_press= self.snackbar.dismiss),]
            self.snackbar.open()

    def evaluate (self,obj):
        self.manager.current= "history"
        self.manager.transition.direction = 'left'

    def plus(self):
        self.p = self.p +4.16
        self.ids.progress.value = self.p

class MeContent(MDBoxLayout):
    pass
class TeamContent(MDBoxLayout):
    pass
class WeContent(MDBoxLayout):
    pass

class GoalsScreen(Screen):
    panel_is_open = False

    def on_enter(self):
        self.panel0 = MDExpansionPanel(icon="flash",content=WeContent(),
                                       panel_cls=MDExpansionPanelOneLine(text="Definuj si ciele"), )

        self.ids.cards.add_widget(self.panel0)
        self.panel0.bind(on_open=self.panel_open, on_close=self.panel_close)

        self.panel1 = MDExpansionPanel(icon="human-greeting",content=MeContent(),
                panel_cls=MDExpansionPanelOneLine(text="Ja"),)

        self.ids.cards.add_widget(self.panel1)
        self.panel1.bind(on_open=self.panel_open, on_close=self.panel_close)

        self.panel2 = MDExpansionPanel(icon="human-capacity-increase", content=TeamContent(),
                                       panel_cls=MDExpansionPanelOneLine(text="Tím"), )

        self.ids.cards.add_widget(self.panel2)
        self.panel2.bind(on_open=self.panel_open, on_close=self.panel_close)

        self.panel3 = MDExpansionPanel(icon="human-male-female", content=WeContent(),
                                       panel_cls=MDExpansionPanelOneLine(text="Vzťah"), )

        self.ids.cards.add_widget(self.panel3)
        self.panel3.bind(on_open=self.panel_open, on_close=self.panel_close)

    def panel_open(self, *args):
        self.panel_is_open = True

    def panel_close(self, *args):
        self.panel_is_open = False

    def main_navigate(self, button):
        if button.icon == "home":
            self.manager.current = "home"
        elif button.icon == "lightning-bolt":
            self.manager.current = "goals"
        elif button.icon == "notebook":
            self.manager.current = "history"

class Content(MDBoxLayout):
    pass

class CustomItem(ThreeLineAvatarIconListItem):

    def sh_delete_item(self):
        yes_button = MDFillRoundFlatButton (text="Zmazať", on_release=self.close_del_dialog
                                            ,on_press= self.delete_item)
        no_button = MDRoundFlatButton (text= "Zrušiť", on_release= self.close_del_dialog)
        self.del_dialog = MDDialog(title="Naozaj zmazať test?",
                                    size_hint=[0.8, 0.5], auto_dismiss=False,
                                    buttons=[ no_button,yes_button])
        self.del_dialog.open()

    def close_del_dialog(self, obj):
        self.del_dialog.dismiss()

    def delete_item(self, item):
        self.parent.get_screen('history')
        self.panel.content.remove_widget(item)
        self.panel.height -= item.height
        for index, val in enumerate(self.panel.content.children[::-1]):
            val.secondary_text = str(index + 1)

    icon = StringProperty('')

class HistoryScreen(Screen):
    panel_is_open = False
    def on_enter(self):
        self.ids.panel_container.clear_widgets()  # to avoid re-adding panel each time


        self.panel= MDExpansionPanel(icon="all.png", panel_cls=MDExpansionPanelOneLine(
                        text="Moje testy",),
                    content=Content())

        self.ids.panel_container.add_widget(self.panel)
        self.panel.bind(on_open=self.panel_open, on_close=self.panel_close)

    def panel_open(self, *args):
        self.panel_is_open = True

    def panel_close(self, *args):
        self.panel_is_open = False

    def delete_item(self, item):
        self.panel.content.remove_widget(item)
        self.panel.height -= item.height
        for index, val in enumerate(self.panel.content.children[::-1]):
            val.secondary_text = str(index + 1)

    def add_into_panel(self, Názov, interval):
        item = CustomItem(text=f"{len(self.panel.content.children) + 1} Názov",
                          secondary_text="ukazovatel",tertiary_text="datoum" ,icon="book-outline")
        self.panel.content.add_widget(item)
        if self.panel_is_open and len(self.panel.content.children) > 1:
            self.panel.height += item.height
        elif self.panel_is_open and len(self.panel.content.children) == 1:
            self.panel.height -= (self.panel.height - item.height) - self.panel.panel_cls.height

    def callback_for_menu_items(self, *args):
        toast(args[0])

    def show_bottom_sheet(self,):
        bottom_sheet_menu = MDListBottomSheet(
            bg_color=[1, 1, 1, 1],
            radius_from="top",)

        for i in range(1, 22):
            bottom_sheet_menu.add_item(

                f"d {i}",
                lambda x, y=i: self.callback_for_menu_items(
                    f"d {y}"
                ),
            )
        bottom_sheet_menu.open()

    def main_navigate(self, button):
        if button.icon == "home":
            self.manager.current = "home"
        elif button.icon == "lightning-bolt":
            self.manager.current = "goals"
        elif button.icon == "notebook":
            self.manager.current = "history"

class MainApp(MDApp):

    def build(self):
        self.theme_cls.primary_palette = "Red"
        self.theme_cls.primary_hue = "500"
        self.theme_cls.theme_style = "Light"

        #db= DataBase("package.txt")

        screen = Builder.load_string(screen_helper)
        return screen

MainApp().run()


.kv

screen_helper = """
ScreenManager:
    HomeScreen:
    MotivationScreenMe:
    MotivationScreenTeam:
    MotivationScreenWe:
    TestScreenV:
    TestScreenM:
    GoalsScreen:
    HistoryScreen:

<HomeScreen>:
    name: "home"

    MDLabel:
        text: "Spoznaj seba"
        font_size: (root.width**2 + root.height**2) / 13**4
        halign: "center"
        pos_hint: { "center_x" :0.7, "center_y":0.9}
        theme_text_color: "Custom"
        text_color: 0.96,0.79,0.09, 1
    Image:
        source: "all.png"
        pos_hint: { "center_x" :0.5, "center_y":0.5}
        size_hint: (1,1)

    MDFloatingActionButton:
        icon: "play-circle-outline"
        size_hint: None, None
        pos_hint: {"center_x" :0.5, "center_y":0.08}
        md_bg_color: app.theme_cls.primary_color
        on_release: root.show_ChooseDialog()

    MDFloatingActionButton:
        icon: "help-circle-outline"
        md_bg_color: app.theme_cls.primary_color
        pos_hint: { "center_x" :0.15, "center_y":0.08}
        on_release: root.show_HelpDialog()

    MDFloatingActionButtonSpeedDial:
        callback: root.main_navigate
        data: 
            {'home': 'Domov',
            'lightning-bolt': 'Ciele',
            'notebook': 'Moje testy'}

<ItemConfirm>
    on_release: root.set_icon(check)

    CheckboxLeftWidget:
        id: check
        group: "check"            

<MotivationScreenMe>:
    name: "motivationme"
    nazov_testu: nazov_testu

    MDCard:
        orientation: "vertical"
        pos_hint:{ "center_x" :0.5, "center_y": 0.6} 
        size_hint: 0.8, 0.7
        padding: "8dp"

        MDLabel:
            text: "Osobné zlepšenie"
            font_size: (root.width**2 + root.height**2) / 13**4
            halign: "center"
            pos_hint: { "center_x" :0.3, "center_y":0.95}
            size_hint: 0.8, 0.1
            theme_text_color: "Custom"
            text_color: app.theme_cls.primary_color

        MDSeparator:
            height: "1dp"

        MDLabel:
            text: "bla bla bla bla bla "
            font_size: (root.width**2 + root.height**2) / 13**4
            halign: "center"

    MDTextField:
        id: nazov_testu
        hint_text:"Zadaj názov testu"
        helper_text: "napr. Test 1"
        helper_text_mode: "on_focus"
        pos_hint: { "center_x" :0.5, "center_y":0.2}
        size_hint: 0.8,0.1 

    MDFloatingActionButton:
        icon: "play-circle-outline"
        pos_hint: { "center_x" :0.5, "center_y":0.08}
        md_bg_color: app.theme_cls.primary_color
        on_release: 
            root.manager.current = "testv"
            root.manager.transition.direction = 'up'
        on_press: root.test_name()

    MDFloatingActionButtonSpeedDial:
        callback: root.main_navigate
        data: 
            {'home': 'Domov',
            'lightning-bolt': 'Ciele',
            'notebook': 'Moje testy'} 

<MotivationScreenTeam>:
    name: "motivationteam"
    nazov_testu: nazov_testu

    MDCard:
        orientation: "vertical"
        pos_hint:{ "center_x" :0.5, "center_y": 0.6} 
        size_hint: 0.8, 0.7
        padding: "8dp"

        MDLabel:
            text: "Práca v tíme"
            halign: "center"
            pos_hint: { "center_x" :0.3, "center_y":0.95}
            font_size: (root.width**2 + root.height**2) / 13**4
            size_hint: 0.8, 0.1
            theme_text_color: "Custom"
            text_color: app.theme_cls.primary_color

        MDSeparator:
            height: "1dp"

        MDLabel:
            text: "bla bla bla bla bla "
            font_size: (root.width**2 + root.height**2) / 13**4
            halign: "center"

    MDTextField:
        id: nazov_testu
        hint_text:"Zadaj názov testu"
        helper_text: "napr. Test 1"
        helper_text_mode: "on_focus"
        pos_hint: { "center_x" :0.5, "center_y":0.2}
        size_hint: 0.8,0.1 

    MDFloatingActionButton:
        icon: "play-circle-outline"
        pos_hint: { "center_x" :0.5, "center_y":0.08}
        md_bg_color: app.theme_cls.primary_color
        on_release: 
            root.manager.current = "testv"
            root.manager.transition.direction = 'up'
        on_press: root.test_name()

    MDFloatingActionButtonSpeedDial:
        callback: root.main_navigate
        data: 
            {'home': 'Domov',
            'lightning-bolt': 'Ciele',
            'notebook': 'Moje testy'} 

<MotivationScreenWe>:
    name: "motivationwe"
    nazov_testu: nazov_testu

    MDCard:
        orientation: "vertical"
        pos_hint:{ "center_x" :0.5, "center_y": 0.6} 
        size_hint: 0.8, 0.7
        padding: "8dp"

        MDLabel:
            text: "Pre vzťah"
            halign: "center"
            pos_hint: { "center_x" :0.3, "center_y":0.95}
            font_size: (root.width**2 + root.height**2) / 13**4
            size_hint: 0.8, 0.1
            theme_text_color: "Custom"
            text_color: app.theme_cls.primary_color

        MDSeparator:
            height: "1dp"

        MDLabel:
            text: "bla bla bla bla bla "
            font_size: (root.width**2 + root.height**2) / 13**4
            halign: "center"

    MDTextField:
        id: nazov_testu
        hint_text:"Zadaj názov testu"
        helper_text: "napr. Test 1"
        helper_text_mode: "on_focus"
        pos_hint: { "center_x" :0.5, "center_y":0.2}
        size_hint: 0.8,0.1 

    MDFloatingActionButton:
        icon: "play-circle-outline"
        pos_hint: { "center_x" :0.5, "center_y":0.08}
        md_bg_color: app.theme_cls.primary_color
        on_release: 
            root.manager.current = "testv"
            root.manager.transition.direction = 'up'
        on_press: root.test_name()

    MDFloatingActionButtonSpeedDial:
        callback: root.main_navigate
        data: 
            {'home': 'Domov',
            'lightning-bolt': 'Ciele',
            'notebook': 'Moje testy'} 

<TestConfirm>
    on_release: root.set_icon(check)

    CheckboxLeftWidget:
        id: check 

<TestScreenV>:
    name: "testv"
    MDCard:
        orientation: "vertical"
        padding: "8dp"
        size_hint: 0.9,0.7
        pos_hint: {"center_x": .5, "center_y": .6}

        OneLineListItem:                          
            text: "Vyber možnosť, ktorá ťa NAJVIAC vystihuje"
            theme_text_color: "Custom"
            text_color: app.theme_cls.primary_color
            font_size: (root.width**2 + root.height**2) / 13**4

        ScrollView:
            do_scroll_x: False
            BoxLayout:
                orientation: 'vertical'
                size_hint_y: None
                height: dp(6530)

                OneLineListItem:
                    text: "1/24 "
                    theme_text_color: "Custom"
                    text_color: app.theme_cls.primary_color
    MDFloatingActionButton:
        icon: "check-circle-outline"
        pos_hint: { "center_x" :0.5, "center_y":0.08}
        md_bg_color: app.theme_cls.primary_color
        on_release: root.show_example_snackbar()


    MDProgressBar:
        id: progress
        size_hint_x: 0.8
        size_hint_y: 0.08
        color: app.theme_cls.accent_color
        pos_hint: { "center_x" :0.5, "center_y":0.2}

<TestScreenM>:
    name: "testm"

    MDCard:
        orientation: "vertical"
        padding: "8dp"
        size_hint: 0.9,0.7
        pos_hint: {"center_x": .5, "center_y": .6}

        OneLineListItem:                          
            text: "Vyber možnosť, ktorá ťa NAJMENEJ vystihuje"
            theme_text_color: "Custom"
            text_color: 0.19,0.38,0.17,1
            font_size: (root.width**2 + root.height**2) / 13**4

        ScrollView:
            do_scroll_x: False
            BoxLayout:
                orientation: 'vertical'
                size_hint_y: None
                height: dp(6530)

                OneLineListItem:
                    text: "1/24 "
                    theme_text_color: "Custom"
                    text_color: 0.19,0.38,0.17,1
                    
                TestConfirm:
                    text: "prieberčivý"
                    font_size: (root.width**2 + root.height**2) / 13**4
                    text_of_the_option: "s"
                    on_press: root.plus()
     MDFloatingActionButton:
        icon: "check-circle-outline"
        pos_hint: { "center_x" :0.5, "center_y":0.08}
        md_bg_color: app.theme_cls.primary_color
        on_release: root.show_example_snackbar()

    MDProgressBar:
        id: progress
        size_hint_x: 0.8
        size_hint_y: 0.08
        color: app.theme_cls.accent_color
        pos_hint: { "center_x" :0.5, "center_y":0.2}

<MeContent>:
    adaptive_height: True
    orientation: 'vertical'
    
    spacing: "12dp"
    size_hint_y: None
    height: "120dp"
    
    
    
    MDLabel:
        text: "Ako by si ..?"
        theme_text_color: "Custom"
        text_color: 0.96,0.79,0.09, 1
    
    MDTextField:
        hint_text: "Ciel No.1"
        mode: "rectangle"
    MDTextField:
        hint_text: "Ciel No.2"
        mode: "rectangle"
    MDTextField:
        hint_text: "Ciel No.3"
        mode: "rectangle"
        
<GoalsScreen>:
    name: "goals"
    
    ScrollView:
        MDList:
            id: cards
        
    MDRoundFlatIconButton:
        text: "technika SMART" 
        icon: 'lightbulb-on-outline'
        theme_text_color: "Custom"
        text_color: app.theme_cls.accent_color
        pos_hint: {"center_y": .2}
              
               
    MDFloatingActionButtonSpeedDial:
        callback: root.main_navigate
        data: 
            {'home': 'Domov',
            'lightning-bolt': 'Ciele',
            'notebook': 'Moje testy'}
    
<Content>
    adaptive_height: True
    orientation: 'vertical'
    
<CustomItem>:
    IconLeftWidget:
        icon: root.icon

    IconRightWidget:
        icon: 'delete'
        on_press: root.sh_delete_item()
        
#:import Clock kivy.clock.Clock
#:import partial functools.partial
            
<HistoryScreen>:
    name: "history"
    
    ScrollView:
        MDList:
            id: panel_container
                      
    MDFillRoundFlatButton: 
        text:"Pridaj test"
        pos_hint:{ "center_x" :0.5, "center_y": 0.5} 
        size_hint: None, None
        on_release:Clock.schedule_once(partial(root.add_into_panel, 'text'), .5) 
                    
    MDFillRoundFlatButton:
        pos_hint:{ "center_x" :0.5, "center_y": 0.1} 
        size_hint: None, None
        text: "Typy osobností"
        on_press: root.show_bottom_sheet()
        
    MDFloatingActionButtonSpeedDial:
        callback: root.main_navigate
        data: 
            {'home': 'Domov',
            'lightning-bolt': 'Ciele',
            'notebook': 'Moje testy'}

       
"""                   
    
    ```    

ANSWER

Answered 2021-Jan-05 at 10:27

If you want to access HistoryScreen then you have to do it like self.parent.get_screen('history') then you can access other widgets or anything else you want from HistoryScreen

Source https://stackoverflow.com/questions/65576123

Community Discussions, Code Snippets contain sources that include Stack Exchange Network

Vulnerabilities

No vulnerabilities reported

Install TapTargetView

TapTargetView is distributed using MavenCentral.

Support

For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .

DOWNLOAD this Library from

Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from
over 430 million Knowledge Items
Find more libraries
Reuse Solution Kits and Libraries Curated by Popular Use Cases

Save this library and start creating your kit

Explore Related Topics

Share this Page

share link
Compare User Interface Libraries with Highest Quality
Compare User Interface Libraries with Highest Security
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from
over 430 million Knowledge Items
Find more libraries
Reuse Solution Kits and Libraries Curated by Popular Use Cases

Save this library and start creating your kit

  • © 2022 Open Weaver Inc.