gpt4 book ai didi

java - CheckBox 中的 setChecked 和 setSelected 不起作用

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

我有一个 Activity,它在寻呼机中有 5 个 fragment 。我用过

 viewPager.setOffscreenPageLimit(fragmentList.size());

能够一次性创建所有 fragment 我还有一个监听器,一旦我有一个 newIntent,它就会将参数(对象)传递给所有 fragment 。

在我的一个 fragment 中,我有复选框,应根据 Activity 中的参数选择该复选框。和其他观点,我能够改变他们的文本和背景的值(value)。只是这个复选框我已将其设置为打开但是当我看到它时,我发现它已关闭,所有其他事件都运行良好。

这里是 Activity

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setTheme(R.style.AppTheme_PopupOverlay);
setContentView(R.layout.activity_configurations);

ViewPager viewPager = findViewById(R.id.container);
TabLayout tabLayout = findViewById(R.id.tabs);

setNdef(getIntent().getExtras());
String type = getNdef().getString("id");

List<Fragment> fragmentList = createFragments(type);
SectionsPagerAdapter pagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager(), fragmentList);
viewPager.setAdapter(pagerAdapter);

fillTableLayout(tabLayout, type);

viewPager.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(tabLayout));
tabLayout.addOnTabSelectedListener(new TabLayout.ViewPagerOnTabSelectedListener(viewPager));
tabLayout.setTabMode(TabLayout.MODE_SCROLLABLE);
viewPager.setOffscreenPageLimit(fragmentList.size());
readNfcDialog = createReadDialog();
writeNfcDialog = createWriteDialog();
readNfcDialog.show();
setForeground();
}

@Override
protected void onNewIntent(Intent intent) {

super.onNewIntent(intent);


ClassNfcTag wepTag = new ClassNfcTag(intent);
String type = wepTag.defineClassTag();
OmsRepeaterTag omsRepeaterTag = new OmsRepeaterTag(intent);
byteMap = omsRepeaterTag.readTag();
if (byteMap != null) {
setTagOmsConfiguration(OmsConfiguration.fromByteArray(byteMap));
for (OmsListener listener : onReceiveOmsList) {
listener.gotOms(getInTagOmsConfiguration());
}
}
}

这是其中一个 fragment

    @Override
public void gotOms(OmsConfiguration configuration) {
setConfiguration(configuration);
if (isAdded()) {
boolean status = getConfiguration().getDeleteRsl();
delete.setChecked(status);
delete.setSelected(status);

}
}

作为一种解决方案,我尝试使用 Switch 而不是 CheckBox,效果很好。

我还尝试将分页器设置为从具有复选框的 fragment 开始,并且它也可以工作。

viewPager.setCurrentItem(checkBoxFragmentPosition);

我还尝试调试代码,它显示复选框已选中,当我尝试通过触摸它将其更改为选中时(以编程方式选中它,在 UI 中我看到它未选中),它从未选中状态更改为取消选中。然后下次触摸更改为选中。

最佳答案

对于那些会读到这个问题的人来说,这只是android中一个 Unresolved 错误。对于我的情况,我使用了 toggleButton 而不是 checkBox

关于java - CheckBox 中的 setChecked 和 setSelected 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56259992/

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