This module is base on the android module from Astuetz with some changes
Thanks astuetz for greate solution.
This module is like Google Play tabs and ViewPager whit:
To access this module from JavaScript, you would do the following:
var module = require("com.navid.tabs");
var tabs = module.createPagerTabs();
The module variable is a reference to the Module object. The tabs variable is a instance of viewpager.
For Alloy there's a widget to wrap this module.
This module use https://github.com/astuetz/PagerSlidingTabStrip with some changes
Fork repository is here: https://github.com/dreamlearn/PagerSlidingTabStrip
var win = Ti.UI.createWindow();
win.open();
var module = require('com.navid.tabs');
var tabs = module.createPagerTabs();
win.add(tabs);
The priority of color and color resource is with Color, if color not set use its resource if it set
ex.
{
color: "red",
colorResource: "holo_blue_light"
}
text will be red and colorResource will be ignored }
var win = Ti.UI.createWindow();
win.open();
var tabs = require('com.navid.tabs');
var text = Ti.UI.createTableView({
title: "NAVID",
backgroundColor: "white",
data: [
{title: "1"},
{title: "2"},
{title: "3"},
{title: "4"},
{title: "5"}
]
});
var text2 = Ti.UI.createTableView({
title: "NAVID",
backgroundColor: "white",
data: [
{title: "1"},
{title: "2"},
{title: "3"},
{title: "4"},
{title: "5"},
{title: "6"}
]
});
var text3 = Ti.UI.createTableView({
title: "NAVID",
backgroundColor: "white",
data: [
{title: "1"},
{title: "2"}
]
});
var tabs = tabs.createPagerTabs({
current: 4,
tab: {
indicatorResource: "holo_blue_light",
colorResource: "holo_blue_light",
backgroundColor: "white",
alignment: tabs.ALIGNMENT_RIGHT
},
views: [
{
title: "Test1",
view: text
},
{
title: "Test2",
view: text2
},
{
title: "Test3",
view: text3
}
]
});
tabs.add("Dynamic Tab", Ti.UI.createLabel({text:"Label 1"}));
tabs.add("Dynamic Tab 2", Ti.UI.createLabel({text:"Position 2"}));
tabs.addEventListener('pageScrolled', function (evt) {
console.log('Page Scrolled');
});
tabs.addEventListener('pageSelected', function (evt) {
console.log('Page Selected');
});
tabs.addEventListener('pageScrollStateChanged', function (evt) {
console.log('Page Scroll Changed');
});
tabs.addEventListener('click', function (evt) {
console.log('Click');
});
tabs.addEventListener('longClick', function (evt) {
console.log('Long click');
});
tabs.addEventListener('touch', function (evt) {
console.log('Touch');
});
tabs.addEventListener('focusChange', function (evt) {
console.log('Focus Change');
});
win.add(tabs);
Full Name: Navid Ghahremani
Email: ghahramani.navid@gmail.com
Please fill free to contact and share your idea with me ( Add new feature, fixing bug, get some help and etc... )
It's open source and it's under Apache licenses