Hello,
I am using smartgwt-mobile-1.0d_2013-05-09 and noticed that scrolling speed on android phone and iPhone is quite differnt.
I thought that my code had some problem but I encountered same issue on helloworld.
Scrolling speed on iPhone is fast as I expected but on Android, regardless of hardware specification, scrolling speed is too slow.
Any solution for this?
I am using smartgwt-mobile-1.0d_2013-05-09 and noticed that scrolling speed on android phone and iPhone is quite differnt.
I thought that my code had some problem but I encountered same issue on helloworld.
Scrolling speed on iPhone is fast as I expected but on Android, regardless of hardware specification, scrolling speed is too slow.
Any solution for this?
Code:
package com.mycompany.client; import com.google.gwt.core.client.EntryPoint; import com.google.gwt.user.client.ui.RootLayoutPanel; import com.smartgwt.mobile.client.widgets.Button; import com.smartgwt.mobile.client.widgets.Dialog; import com.smartgwt.mobile.client.widgets.NavigationButton; import com.smartgwt.mobile.client.widgets.Panel; import com.smartgwt.mobile.client.widgets.ScrollablePanel; import com.smartgwt.mobile.client.widgets.NavigationButton.NavigationDirection; import com.smartgwt.mobile.client.widgets.events.ClickEvent; import com.smartgwt.mobile.client.widgets.events.ClickHandler; import com.smartgwt.mobile.client.widgets.layout.NavStack; import com.smartgwt.mobile.client.widgets.toolbar.ToolStrip; import com.smartgwt.mobile.client.widgets.toolbar.ToolStripButton; /** * Entry point classes define <code>onModuleLoad()</code>. */ public class HelloWorld implements EntryPoint { // handles application pages history and transitions private NavStack navigationStack; /** * This is the entry point method. */ public void onModuleLoad() { navigationStack = new NavStack(getColorsView()); navigationStack.setMomentumScroll(true); RootLayoutPanel.get().add(navigationStack); } public Panel getColorsView() { Panel panel = new ScrollablePanel("Colors"); panel.setMomentumScroll(true); String[] colors = new String[]{ "blue", "red", "yellow", "green", "gray", "white", "black", "pink", "brown" }; for (int i = 0; i < 150; i++) { String color = colors[(int) (Math.random() * colors.length)]; Button button = new Button(color); button.setTintColor(color); button.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { navigationStack.push(getSportsView(((Button)event.getSource()).getTitle())); } }); panel.addMember(button); } return panel; } public Panel getSportsView(String color) { Panel panel = new ScrollablePanel("Sports"); NavigationButton buttonRefresh = new NavigationButton("Refresh", NavigationDirection.NONE); navigationStack.getNavigationBar().setRightButton(buttonRefresh); panel.setMomentumScroll(true); String[] sports = new String[]{ "Baseball", "Basketball", "Football", "Hockey", "Volleyball" }; for (int i = 0; i < 150; i++) { String sport = sports[(int) (Math.random() * sports.length)]; ToolStripButton button = new ToolStripButton(sport); button.setInheritTint(true); button.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { String sportName = ((ToolStripButton)event.getSource()).getTitle(); Dialog dialog = new Dialog("Do you like " + sportName + "?"); dialog.setButtons(Dialog.YES, Dialog.NO); dialog.show(); } }); ToolStrip toolbar = new ToolStrip(); toolbar.setMomentumScroll(true); toolbar.setTintColor(color); toolbar.addMember(button); panel.addMember(toolbar); } return panel; } }