有很多关于如何使用的问题,CheckedTextView但我无法使其正常工作.
我有一个CursorAdapter与具有可自定义视图CheckedTextView用android:id="@android:id/text1".我使用过,android:id/text1因为有不同的问题提到如果你使用它,你将获得免费的选择模式倍数.
如果我做这样的事情:
final long[] checkedIds = mListView.getCheckedItemIds();
for ( int i = 0 ; i < mListView.getCheckedItemCount() ; i++ ) {
Log.d(TAG, "id checked: " + checkedIds[i]);
}
Run Code Online (Sandbox Code Playgroud)
我得到所有已检查的ID没有问题,但我看不到任何视觉反馈ListView.
换句话说,逻辑很好但是当我点击CheckedTextView绿色勾号没有出现时.
我正在读ListViewsrc代码,我找不到任何引用android:id/text1,让我想知道我是否应该自己处理widget的检查状态.
任何人都可以找到android:id/text1用于检查小部件的位置吗?
Com*_*are 33
基于我对代码的阅读,该行必须实现Checkable:
if (mChoiceMode != CHOICE_MODE_NONE && mCheckStates != null) {
if (child instanceof Checkable) {
((Checkable) child).setChecked(mCheckStates.get(position));
}
}
Run Code Online (Sandbox Code Playgroud)
这适用于具有选择模式的列表的库存行布局,因为行是a CheckedTextView,它实现Checkable.
因此,将Checkable接口添加到您的自定义View,将接口的方法委派给CheckedTextView,并查看是否有效.
| 归档时间: |
|
| 查看次数: |
29548 次 |
| 最近记录: |