如何清除背面片段中的文本字段?

时间:2017-11-11 10:12:20

标签: java android android-fragments

我面临着清除片段中背面文本视图的问题。当我在Fragment A中将文本设置为textview然后单击提交按钮以移动下一个片段B.之后我在片段B中按下后回到前一个片段B.在片段A中,文本视图文本未被清除如何清除textview中的文本。请帮我解决这个问题。

以下代码用于将片段从片段A替换为B.

Bundle args = new Bundle();
args.putString("fromDate",fromDate);
args.putString("toDate",toDate);
args.putInt("account",accountPosition);
//     ldf.setArguments(args);

//Inflate the fragment
getFragmentManager().beginTransaction().add(R.id.fragment_container, ldf).commit();
getFragmentManager().popBackStack(Fragment_Retailer_Home_Main.class.getSimpleName(),
FragmentManager.POP_BACK_STACK_INCLUSIVE);


Fragment_Retailer_account_Statements fragment = new  Fragment_Retailer_account_Statements();
android.support.v4.app.FragmentTransaction fragmentTransaction =
getFragmentManager().beginTransaction();
fragment.setArguments(args);
fragmentTransaction.replace(R.id.fragment_container, fragment,"Fragment_Retailer_account_Statement");
//         fragmentTransaction.addToBackStack(Fragment_Retail_Enter_Date.class.getSimpleName() );
fragmentTransaction.commit();

3 个答案:

答案 0 :(得分:1)

使用onResume()方法

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

    /*code to set text to null 
      eg : txtBoxName.setText(""); or
           txtBoxName.clearComposingText(); */

 }
}

答案 1 :(得分:0)

您可以考虑不将片段添加到backStack,并在后退时重新创建新片段。 你可以为你的活动添加一个标志,并检查你想要清除的片段中OnResume里面的标志。

答案 2 :(得分:0)

片段A:

getFragmentManager().beginTransaction()
                    .replace(R.id.frag, Fragment B)
                    .addToBackStack(null)
                    .commit();

来自片段B(背面印刷):

getFragmentManager().popBackStack();