复选框 setChecked() 在后台片段中不起作用



在一个活动中,有一个包含5个片段的FragmentViewPager。 启动活动时将同时创建 5 个片段。如果执行 setChecked(( 的片段在应用执行 CheckBox setChecked(true( 时不是首页,则 CheckBox 的 UI 为空,isChecked(( 的值为 true。

我发现notifyViewAccessibilityStateChangedIfNeeded( AccessibilityEvent.CONTENT_CHANGE_TYPE_UNDEFINED); setChecked(boolean checked) android CompoundButton.java。也许它不能在后台片段时更改UI。但是如何解决它。

if (cls.getIf_allow_to_join().equals("是")) {
                checkBox.setChecked(true);
            } else if (cls.getIf_allow_to_join().equals("否")) {
                checkBox.setChecked(false);
            }

这是 AsyncTask 中 Fragment OnCreateView(( 的 setChecked(( 代码。如果我在启动活动时将此片段设置为当前项目,则没有此问题。

请使用AppCompatCheckBox而不是CheckBox

检查android.support.v7.widget.AppCompatCheckBox

最新更新