我正在编写一个代码,我正在使用Checkboxes
类中的ActionListener
创建动态non-Activity
。
现在我想从CompoundButton.OnCheckedChangeListener()
更改一些用户界面。
每个checkbox
代表一个警报。在Database
中,每个警报都设置为column
,指定警报是启用还是禁用,我需要访问数据库才能执行此操作。我正在编写以下代码:
public class DataBaseAdapter extends SQLiteOpenHelper
{
....
.... //onCreate, onUpdate, other methods used.
....
public TableLayout getAllAlarmList(Context con)
{
SQLiteDatabase db = this.getReadableDatabase();
for(int i=0;i<maxCount;i++) //maxCount number of rows in database
{
check[i]= new CheckBox(con);
check[i].setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener()
{
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked)
{
if(isChecked)
{
}
else
{
}
}
});
}
}
现在我需要在这里添加代码,这使我能够添加数据库访问代码。怎么做。?
答案 0 :(得分:0)
我不能这样做。由于Android的限制,Android使UI安全。因此不允许 Activity Class
以外的任何线程或类在用户界面中进行更改。
所以我做的最好的事情就是收集所有的警报(数据),然后发送Array
并将数组发送回Activity
类的调用方法,然后在此处列出。