Showing posts with label APLIKASI. Show all posts
Showing posts with label APLIKASI. Show all posts

Monday, May 23, 2022

Kivy - KivyMD Login App Dahsboard Example

berikut ini tampilan source code membangun aplikasi multi platform menggunakan bahasa pemrograman python dan framework kivy + kivymd








perintahnya adalah sebagai berikut:

from kivymd.app import MDApp

from kivy.lang import Builder

from kivy.uix.screenmanager import ScreenManager, Screen

from kivy.clock import Clock

from kivy.core.window import Window

from kivymd.uix.list import MDList, OneLineListItem


Window.size = (400, 700)

tampilan_awal = '''

MainScreen:

    SplashScreen:

    LoginScreen:

    

<SplashScreen>:

    name: 'splashscreen'

    BoxLayout:

        orientation: 'vertical'

        MDLabel:

            id: judul

            text: 'Aplikasi Login'

            font_size: '40'

            markup: True

            halign: 'center'

            

<LoginScreen>:

    name: 'loginscreen'

    BoxLayout:

        orientation: 'vertical'

        padding: '10dp'

        spacing: '10dp'

        pos_hint: {'center_y':0.5}

        adaptive_height: True

        MDLabel:

            text: 'Login'

            font_size: '52'

            halign: 'center'

        MDTextField

            id: username

            hint_text: "Username"

            text: "user"

        MDTextField

            id: password

            hint_text: "Password"

            password:True

            text:"kosong"

        MDRectangleFlatButton:

            id:btnConnect

            text: "LOG IN"

            font_size: 18

            pos_hint: {"center_x": 0.5}

            on_press: root.proses_login()

        Widget:

    Widget:

   

'''



class MainScreen(ScreenManager):

    pass


class SplashScreen(Screen):

    pass


class LoginScreen(Screen):

    def proses_login(self):

        myApp = MDApp.get_running_app()

        try:

            myApp.window_manager.add_widget(AppScreen(name='appscreen'))

            myApp.ganti_layar('appscreen','down') 

        except:

            pass



AppScreen_kv = Builder.load_string('''

<AppScreen>:

    name: 'appscreen'

    BoxLayout:

        orientation: 'vertical'

        MDToolbar:

            id: toolbar

            pos_hint: {"top": 1}

            elevation: 10

            title: "Router Management"

            left_action_items: [["menu", lambda x: nav_draw.set_state()]]

        BoxLayout:

            orientation: 'vertical'


            MDNavigationLayout:

                x: toolbar.height

                ScreenManager:

                    id: app_screen_manager

                                

                MDNavigationDrawer:

                    id: nav_draw

                    orientation: "vertical"

                    padding: "4dp"

                    spacing: "4dp"

                    

                    ScrollView:

                        MDList:

                            id:app_menu

                                        

                    Widget:

''')


class AppScreen(Screen):

    def __init__(self, **kwargs):

        super().__init__(**kwargs)

        Clock.schedule_once(self.buatMenuLayar)

        

    def buatMenuLayar(self, *args):

        listLayar = [DashboardScreen(name="Dashboard")]

        for i in range(len(listLayar)):

            self.ids.toolbar.title = listLayar[i].name

            self.ids.app_screen_manager.add_widget(listLayar[i])   

            self.ids.app_menu.add_widget(OneLineListItem(text=listLayar[i].name,on_press=self.gantiScreen))

        self.ids.app_menu.add_widget(OneLineListItem(text="Log Out",on_press=self.logOut))

        

    def gantiScreen(self, instance):

        self.ids.toolbar.title=instance.text

        self.ids.nav_draw.set_state("close")

        self.ids.app_screen_manager.current = instance.text

        

    def logOut(self, instance):

        myApp = MDApp.get_running_app()

        myApp.ganti_layar('loginscreen','up')

        self.ids.nav_draw.set_state("close")

        

    def build(self):

        self.root_layout = FloatLayout()

        self.root_layout.add_widget(AppScreen_kv)

        return self.root_layout





dashboard_kv = Builder.load_string('''

<DashboardScreen>:

    name: 'dashboardscreen'

    MDBoxLayout:

        spacing: "5dp"

        padding: "10dp"

        pos_hint: {"center_x": .5, "center_y": .5}

        orientation: 'vertical'

        GridLayout:

            cols: 2

            rows: 3

            spacing:'5dp'

            MDCard:

                size_hint: 0.3, 0.3

                orientation: 'vertical'

                padding: '15dp'

                spacing: '15dp'

                md_bg_color: [0.121, .227, 0.576, 0.7]

                radius: [16, ]

                MDLabel:

                    id: jumlahuserdhcp

                    text: "0"

                    theme_text_color: "Custom"

                    text_color: 1, 1, 1, 1

                    font_style: 'H3'

                    halign: 'center'

                MDLabel:

                    id: keteranganuserdhcp

                    text: 'User DHCP'

                    theme_text_color: "Custom"

                    text_color: 1, 1, 1, 1

                    font_style: 'Subtitle2'

                    halign: 'center'

            MDCard:

                size_hint: 0.3, 0.3

                orientation: 'vertical'

                padding: '15dp'

                spacing: '15dp'

                md_bg_color: [0.121, .227, 0.576, 0.7]

                radius: [16, ]

                MDLabel:

                    id: jumlahuserpppoe

                    text: "0"

                    theme_text_color: "Custom"

                    text_color: 1, 1, 1, 1

                    font_style: 'H3'

                    halign: 'center'

                MDLabel:

                    id: keteranganuserpppoe

                    text: 'User PPPOE'

                    theme_text_color: "Custom"

                    text_color: 1, 1, 1, 1

                    font_style: 'Subtitle2'

                    halign: 'center'


            MDCard:

                size_hint: 0.3, 0.3

                orientation: 'vertical'

                padding: '15dp'

                spacing: '15dp'

                md_bg_color: [0.121, .227, 0.576, 0.7]

                radius: [16, ]

                MDLabel:

                    id: jumlahuserhospot

                    text: "0"

                    theme_text_color: "Custom"

                    text_color: 1, 1, 1, 1

                    font_style: 'H3'

                    halign: 'center'

                MDLabel:

                    id: keteranganuserhospot

                    text: 'User Hotspot'

                    theme_text_color: "Custom"

                    text_color: 1, 1, 1, 1

                    font_style: 'Subtitle2'

                    halign: 'center'

''')


class DashboardScreen(Screen):

    def on_enter(self):

        print('Halaman Dashboard')

        

    def build(self):

        self.root_layout = FloatLayout()

        self.root_layout.add_widget(dashboard_kv)

        return self.root_layout


class MainApp(MDApp):

    def build(self):

        self.window_manager = Builder.load_string(tampilan_awal)

        Clock.schedule_once(lambda dt: self.ganti_layar('loginscreen'), 3)

        return self.window_manager

    

    def ganti_layar(self,namascreen,arah='down'):

        self.window_manager.transition.direction = arah

        self.window_manager.current = namascreen

        


if __name__ == '__main__':

    MainApp().run()


Tuesday, September 1, 2020

APLIKASI KUMPULAN WIRID DAN DOA BERBASIS ANDROID TANPA IKLAN

Assalamualaikum warahmatullahi wa babarakatuh

Kali ini Abang akan membagikan aplikasi kumpulan Wirid dan Doa berbasis Android tanpa iklan dan memiliki fitur layar yang selalu on saat Aplikasi dibuka. Ok langsung saya berikut ini tampilan aplikasi nya.

Adapun daftar isi dari Aplikasi tersebut antara lain:
+Doa dzikir dan doa ba'da sholat
+Sholatawat Nariya
+Doa Al-Faqih Al-Muqaddam(دعاء الفقيه المقدم الإمام محمد بن على باعلوى)
Ratibul Haddad(الراتب الحداد)+doa
Wiridul Latif(الوِرْدُ الْلَطِيف)
Wirid Syakran(ورد السكران)
Hizib Nashr(حِزبُ النَّصر)
Hizib Bahr(حِزبُ البَحر)
+Wirid Habib Abu Bakar Bin Salim(وِرِد الْحَبِيْبِ اَبُوبَكَر بِن سَالِم)
*Burdah(قصيدة البردة)+doa
Simtudduror(مولد سمط الدرار)+doa
Tahlil(تهليل)+doa
Istighosah(الاستغاثة)
*Surat Kahfi(الكهف)+doa
Surat Yasin(يس)+doa
Surat Ar Rahman(الرحمن)
Surat Waqiah(الواقعة)+doa
Surat Al Mulk(الملك)


Untuk link download ada dibawah ini:

Maap aplikasi belum masuk Google play store Dikarenakan tidak adanya akun untuk meng-upload disana.

Bagi yang ingin membantu meng-upload agar aplikasi bisa lebih dijangkau oleh masyarakat, silahkan hubungi pengembangan aplikasi.

Wassalamu'alaikum warahmatullahi wa babarakatuh