gpt4 book ai didi

android - 由于 fragment 中的 textwacher,无法更改 edittext 的值

转载 作者:行者123 更新时间:2023-11-30 02:28:32 27 4
gpt4 key购买 nike

我在 fragment 中有一个 ListView 。通过单击 ListView 项目,打开一个新 fragment 以显示详细信息。在第二个细节 fragment 中,我有一个 edittext 并在该 edittext 上有一个 textwatcher。在 edittext textwatcher 中输入文本时执行其操作。在后退按钮上我删除了细节 fragment 并返回 ListView fragment 。但问题是当我第二次打开细节 fragment 时,edittext 仍保留其先前的值。textwatcher 在新的细节 fragment 中设置旧 fragment 值。所以如何处理它。请帮帮我。

public class Recieptlistfrag extends Fragment {.....

RecieptFragment fragment;
SharedPreferences preferences;
............
............


listView.setOnItemClickListener(new OnItemClickListener() {
fragment.setArguments(bundle);
getActivity().getSupportFragmentManager()
.beginTransaction().add(R.id.container_top, fragment,
"RecieptFragment").commit();
...........

现在在 receitfragment 的后退按钮中

getActivity().getSupportFragmentManager()
.popBackStackImmediate();

使用 textwatcher 编辑文本...

    public static class MyTextWatcher implements TextWatcher
{
public void onTextChanged(CharSequence cs, int arg1, int arg2, int arg3) {
customAdapter.getFilter().filter(cs);
}

public void beforeTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) {
}

public void afterTextChanged(Editable arg0) {
}
}

最佳答案

不要这样做:

RecieptFragment fragment;

这样做:

 listView.setOnItemClickListener(new OnItemClickListener() {

Fragment fragment = new RecieptFragment();
fragment.setArguments(bundle);
getActivity().getSupportFragmentManager().beginTransaction().add(R.id.container_top, fragment,"RecieptFragment").commit();

希望这会有所帮助。 :)

关于android - 由于 fragment 中的 textwacher,无法更改 edittext 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27603062/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com