kivy: make tabs one third of screen width and fix tabs scrolling

This commit is contained in:
ThomasV 2015-12-13 17:36:23 +01:00
parent f7ffdfc2b1
commit 9b44635e3c
2 changed files with 9 additions and 3 deletions

View File

@ -244,6 +244,7 @@
<TabbedPanelStrip>:
on_parent:
if self.parent: self.parent.bar_width = 0
if self.parent: self.parent.scroll_x = 0.5
<TabbedCarousel>
@ -297,6 +298,7 @@
TabbedCarousel:
id: panel
tab_height: '48dp'
tab_width: panel.width/3
default_tab: history_tab
strip_border: 0, 0, 0, 0
InvoicesScreen:

View File

@ -471,14 +471,18 @@ class TabbedCarousel(Factory.TabbedPanel):
return
idx = self.tab_list.index(value)
n = len(self.tab_list)
if idx in [0, 1]:
scroll_x = 1
elif idx in [n-1, n-2]:
scroll_x = 0
else:
scroll_x = 1. * (n - idx - 1) / (n - 1)
mation = Factory.Animation(scroll_x=scroll_x, d=.25)
mation.cancel_all(scrlv)
mation.start(scrlv)
def on_current_tab(self, instance, value):
if value.text == 'default_tab':
return
self.animate_tab_to_center(value)
def on_index(self, instance, value):