gpt4 book ai didi

android - 用于填充 ListView 行的自定义 SimpleCursorAdapter

转载 作者:行者123 更新时间:2023-11-29 19:07:34 25 4
gpt4 key购买 nike

我正在尝试定义一个自定义 SimpleCursorAdapter 类,它将用于填充 ListView 的行。我使用 v4.widget.SimpleCursorAdapter 库来实现向后兼容性。我对代码的以下两部分有疑问。

在构造函数中,我正在使用

super(context,layout,c,from,to);

同时,这已被弃用,我不确定如何修改它。

还有,在

alarm_activated = (ToggleButton)row.findViewById(R.id.alarm_activated);

“行”无法解析,我不确定如何引用有问题的行。 (此语法适用于 ArrayAdapter,我希望它也适用于 SimpleCursorAdapter...)。

也许,我的代码的某些其他部分(在下文中找到)不正确。

    class AlarmRowAdapter extends SimpleCursorAdapter {

private Context mContext;
private Context appContext;
private int layout;
private Cursor cr;
private final LayoutInflater inflater;

public AlarmRowAdapter(Context context,int layout, Cursor c,String[] from,int[] to) {
super(context,layout,c,from,to);
this.layout=layout;
this.mContext = context;
this.inflater=LayoutInflater.from(context);
this.cr=c;
}

@Override
public View newView (Context context, Cursor cursor, ViewGroup parent) {
return inflater.inflate(layout, null);
}

@Override
public void bindView(View view, Context context, Cursor cursor) {
super.bindView(view, context, cursor);

alarm_activated = (ToggleButton)row.findViewById(R.id.alarm_activated);

if (activationInt == 1) {
alarm_activated.setChecked(true);
alarm_activated.getBackground().setColorFilter(Color.BLUE, PorterDuff.Mode.MULTIPLY);
} else {
alarm_activated.setChecked(false);
}

alarm_activated.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if (isChecked) {
buttonView.getBackground().setColorFilter(Color.BLUE, PorterDuff.Mode.MULTIPLY);
} else {
buttonView.getBackground().setColorFilter(Color.LTGRAY, PorterDuff.Mode.MULTIPLY);
}
}
});

}

}

最佳答案

对于标准构造函数添加一个标志参数:CursorAdapter doc.

super (context,layout,c, from,to, 0);

而您正在尝试使用 row.findViewById 但是变量 row 不存在。由于参数是view,所以应该使用view.findViewById

关于android - 用于填充 ListView 行的自定义 SimpleCursorAdapter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46615794/

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