从其他活动返回时如何保持按钮可见性?

我的代码:

@Override
protected void onStop() {
        super.onStop();

        SharedPreferences btVis = getSharedPreferences(BUTT_VIS,0);
        SharedPreferences.Editor edit = btVis.edit();
        edit.putString("btS1",btSub1.getVisibility()+"");
    }

    @Override
    protected void onResume() {
        super.onResume();

        SharedPreferences btVis = getSharedPreferences(BUTT_VIS,0);
        int btS1 = Integer.parseInt("View." +btVis.getString("btS1",""));
        btSub1.setVisibility(btS1);
    }


我收到错误消息,例如,setVisibility需要采用View.(VISIBILITY)格式。但是我将btS1解析为int格式为View.(VISIBILITY),所以我不知道为什么它不起作用。我该如何解决?

最佳答案

在onResume()方法中尝试此方法。

@Override
protected void onResume() {
    super.onResume();

    SharedPreferences btVis = getSharedPreferences(BUTT_VIS,0);
    int visibility = Integer.parseInt(btVis.getString("btS1",""));
    switch(visibility){
    case View.VISIBLE: //make button visible
    break;
    case View.INVISIBLE: //make button invisible
    break;
    }

}


确保在onStop()方法末尾提交编辑器

10-07 16:05