更改选项卡之前执行任务

时间:2011-03-02 17:32:45

标签: android tabs

我有和Android应用程序有4个选项卡,前3个从用户获取输入并选择第4个选项卡执行一些计算并显示结果。 这适用于实现的选项卡,因此我只需在同一活动中切换视图,因为我可以轻松访问第4个选项卡上的所有输入数据。

我想要做的是更改标签时切换活动。我的标签布局已经失去控制,并且更容易将它们放在单独的fies中,与代码相同。

我想将每个标签中的输入数据保存到单例中,这样我就可以从其他活动中访问它了,但是当标签发生变化,新活动开始并且视图已经消失时,onTabChangedListener似乎没有了。 p>

如何在更改选项卡时调用从当前视图中保存用户数据的方法,而不是在执行此操作之前执行操作。

2 个答案:

答案 0 :(得分:1)

使用内部onPause的{​​{1}}()或onStop()方法怎么样?你可以在那里保存你的数据。

答案 1 :(得分:0)

您可以设置一个OnTouchListener来捕获事件并检索索引,如下所示:

@Override
public boolean onTouch(View v, MotionEvent event) {
    if (event.getAction() == MotionEvent.ACTION_DOWN) {
        float x = event.getX();
        int width = v.getWidth();

        int index = (int) (x / (width / tabsCount)); // The amount of tabs.
        ...
    }
}