android中CheckedTextView中的自定义图形

android中CheckedTextView中的自定义图形,android,android-listview,android-custom-view,checkedtextview,Android,Android Listview,Android Custom View,Checkedtextview,我使用的ListView中包含CheckedTextView。 要更改CheckedTextView框(选中/未选中),我使用以下方法: protected void onListItemClick(ListView l, View v, int position, long id) { super.onListItemClick(l, v, position, id); ... SoundDialog.Builder alert; v

我使用的ListView中包含CheckedTextView。 要更改CheckedTextView框(选中/未选中),我使用以下方法:

protected void onListItemClick(ListView l, View v, int position, long id) {
        super.onListItemClick(l, v, position, id);

    ...

        SoundDialog.Builder alert;
        v.performHapticFeedback(HapticFeedbackConstants.VIRTUAL_KEY);
        switch (soundPreference.getType()) {
        case BOOLEAN:
            CheckedTextView checkedTextView = (CheckedTextView) v;

            if (checkedTextView.isChecked()){
                checkedTextView.setCheckMarkDrawable(R.drawable.ic_blue);
            } else {
                checkedTextView.setCheckMarkDrawable(R.drawable.ic_red);
            }

            boolean checked = !checkedTextView.isChecked();
            ((CheckedTextView) v).setChecked(checked);

            ...
这可以工作,但有一个问题,该方法在listview侦听器中执行(
onListItemClick(listview l,View v,int position,long id){…
) 进入“活动”时,CheckedTextView具有其默认图像,直到您单击该项并执行该方法

如果选中的文本视图是在onListItemClick中创建的,那么如何在onCreate(
if(checkedTextView.isChecked()){…
)中实现此方法

我找了很多,但找不到答案

谢谢你的帮助


提前感谢。

您必须确定是否必须在ListAdapter类的getView()方法中检查CheckedTextView。只有在生成特定侦听器事件时,才会执行侦听器中的代码,直到并且除非即使您使用onCreate()方法编写侦听器代码也没有执行

对不起,我的英语