Android 如何在会话中存储EditText的值

Android 如何在会话中存储EditText的值,android,Android,在购物车活动中,我允许用户编辑物品的数量,并在用户更改数量时获得总金额的更改,但这里我面临一个小问题,每当我单击后退按钮时,它都会重置我的数量,为什么 请参见下面的屏幕截图: !![在此处输入图像描述][1] 例如,在上面的屏幕中,我已经将我的产品Veggie的数量从1编辑到15,并且也得到了总的变化,但问题是一旦我点击后退按钮,那么我将再次得到数量1而不是15的值,这是我之前输入的 请告诉我如何控制这一点? CartAdapter.java: 为什么不保存值并将其填充到onCreate()?您

购物车活动中,我允许用户编辑物品的数量,并在用户更改数量时获得总金额的更改,但这里我面临一个小问题,每当我单击后退按钮时,它都会重置我的数量,为什么

请参见下面的屏幕截图:

!![在此处输入图像描述][1]

例如,在上面的屏幕中,我已经将我的产品Veggie的数量从1编辑到15,并且也得到了总的变化,但问题是一旦我点击后退按钮,那么我将再次得到数量1而不是15的值,这是我之前输入的

请告诉我如何控制这一点?

CartAdapter.java:


为什么不保存值并将其填充到
onCreate()
?您可以使用三种机制中的任何一种来获得您想要的

  • 共享首选项
  • SQLite数据库
  • 应用

  • 为什么不保存值并将其填充到
    onCreate()
    ?您可以使用三种机制中的任何一种来获得您想要的

  • 共享首选项
  • SQLite数据库
  • 应用

  • 考虑到您需要的功能,使用SQLite DB看起来是最好的选择

    考虑到您需要的功能,使用SQLite DB看起来是最好的选择

    如果您已经在存储值,并且只想控制“后退”按钮的工作方式,则可以在购物车活动中使用此按钮:

    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event)  {
        if (keyCode == KeyEvent.KEYCODE_BACK) {
            //Your code
            return true; // so the super method doesn't get called
        }
        return super.onKeyDown(keyCode, event);
    }
    

    如果您已经在存储该值,并且只想控制“后退”按钮的工作方式,则可以在购物车活动中使用该按钮:

    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event)  {
        if (keyCode == KeyEvent.KEYCODE_BACK) {
            //Your code
            return true; // so the super method doesn't get called
        }
        return super.onKeyDown(keyCode, event);
    }
    

    您必须使用startActivityForResult并将数据返回到onActivityResult。您必须使用startActivityForResult并将数据返回到onActivityResult。