gpt4 book ai didi

java - EditText 值未反射(reflect)出来,它显示以前的值,但是当您打印 EditText 的 getText 时,它显示正确的值

转载 作者:行者123 更新时间:2023-12-02 04:32:32 25 4
gpt4 key购买 nike

我正在使用 ViewPager(FragmentStatePagerAdapter) 我的适配器如下

private static class CreateSalesOrderSectionAdapter extends FragmentStatePagerAdapter
{
public CreateSalesOrderSectionAdapter(FragmentManager fm)
{
super(fm);

// mSalesOrderGeneralFragment = new SalesOrderGeneralFragment();
// mSalesOrderProductFragment = new SalesOrderProductFragment();
// mSalesOrderAddressFragment = new SalesOrderAddressFragment();
//
// mSalesOrderGeneralFragment.setArguments(intentData);
// mSalesOrderProductFragment.setArguments(intentData);
// mSalesOrderAddressFragment.setArguments(intentData);

}

@Override
public Fragment getItem(int position)
{
switch (position)
{
case 0:
return mSalesOrderGeneralFragment;
case 1:
return mSalesOrderProductFragment;
case 2:
return mSalesOrderAddressFragment;
default:
break;
}
return null;
}

@Override
public int getCount()
{
return 3;
}
}

在其中一个片段中,我设置了一个 EditText 文本,它第一次工作得很好,但当我从另一个片段更改用户时,它没有反射(reflect)更改,它仍然保持相同的先前文本,但当我打印 EditText 的值时,它显示更新的文本,但更新的文本未反射(reflect)出来,它显示以前的文本。

但是当我取消注释适配器中注释的行时,它工作得很好,我无法理解为什么会发生这种情况。我想知道问题出在哪里。

最佳答案

您在编辑文本中没有获得值(value),因为 ViewPager 没有刷新,而是它的 GUI 没有刷新,当您更改文本时,它会以编程方式更改,并且您会得到它,所以现在您只需要通知 ViewPager 或刷新其 View 。如果notifydatasetchanged不起作用,请尝试再次设置适配器...

关于java - EditText 值未反射(reflect)出来,它显示以前的值,但是当您打印 EditText 的 getText 时,它显示正确的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31242910/

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