Java 编辑并保存附加包

Java 编辑并保存附加包,java,android,Java,Android,因此,我有一种情况,即我从Intent extras填充TextView,然后允许用户编辑它。当用户点击编辑按钮时,EditText显示,文本显示在TextView中 然后用户可以输入新值 最后,当按下save按钮时,新值不会保存,而会显示旧值 这是我的密码: Bundle extras = getIntent().getExtras(); if (extras != null){ textViewNazivTodoaDetails.setText(ext

因此,我有一种情况,即我从Intent extras填充TextView,然后允许用户编辑它。当用户点击编辑按钮时,EditText显示,文本显示在TextView中

然后用户可以输入新值

最后,当按下save按钮时,新值不会保存,而会显示旧值

这是我的密码:

Bundle extras = getIntent().getExtras();
        if (extras != null){
            textViewNazivTodoaDetails.setText(extras.getString("naslov"));
            textViewDatumTodoaDetails.setText(extras.getString("datum"));
            final int id = extras.getInt("id");

            String oldText = extras.getString("naslov");
            editTextDetaljnoIspravljanje.setText(oldText);
        }

        final String newText = editTextDetaljnoIspravljanje.getText().toString();

        buttonDetaljnoIspravljanjeDone.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                textViewNazivTodoaDetails.setText(newText);
            }
        });


    }

我做错了什么?

很明显,您正在用下一行单击
将文本设置回原来的文本

textViewNazivTodoaDetails.setText(newText);
单击
onClick
内不需要此行。相反,您应该拥有将新值保存到您希望保存它的位置的代码

您初始化的
newText
代码行在编辑之前被调用,它包含与
oldText
相同的值。因此,您可以再次看到旧文本

您的文本视图已经有了新输入的文本。

将行字符串newText=editTextDetaljnoIspravljanje.getText().toString()放入文本视图中;在onclick侦听器内部