Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/178.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 来自SQLite的数据未显示_Java_Android_Sqlite - Fatal编程技术网

Java 来自SQLite的数据未显示

Java 来自SQLite的数据未显示,java,android,sqlite,Java,Android,Sqlite,我有我的databasehelper、model和mainactivity,但数据仍然没有显示。我不知道我的代码中有什么错误或缺失 这是我使用DB Browser for sqlite浏览的数据sqlite DatabaseHelper.java 主要活动 public类MainActivity扩展了AppCompatActivity{ 列表=新的ArrayList(); 数据库辅助数据库; 文本视图电视; @凌驾 创建时受保护的void(Bundle savedInstanceState){

我有我的databasehelper、model和mainactivity,但数据仍然没有显示。我不知道我的代码中有什么错误或缺失

这是我使用DB Browser for sqlite浏览的数据sqlite

DatabaseHelper.java

主要活动

public类MainActivity扩展了AppCompatActivity{
列表=新的ArrayList();
数据库辅助数据库;
文本视图电视;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
db=新的DatabaseHelper(getApplicationContext());
tv=(TextView)findviewbyd(R.id.tv);
打印(db.getAllDoctorList());
}
私人作废打印(列表){
//TODO自动生成的方法存根
字符串值=”;
用于(DoctorModel dm:list){
value=value+“id:+dm.id+”,全名:+dm.full\u name+“性别:+dm.Gender+”\n;
}
tv.setText(值);
}
}

您忘记在
getAllDoctorList()下的
doctorArrayList
中添加
DoctorModel对象


何时使用:私人作废打印(列表)? 不是在打开应用程序时

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    db = new DatabaseHelper(getApplicationContext());
    tv = (TextView) findViewById(R.id.tv);

    // ADD THIS LINE:
    // NOW THIS WILL RUN WHEN OPENING/RUNNING THE APPLICATION
    print(db.getAllDoctorList());

}

我将在哪里添加这个?对不起,我只是新来的programming@GemUbaldo在while循环下的
getAllDoctorList()下
。请仔细核对我的答案我明白了对不起。。只是想问一下mainactivity.class中的代码是否已经正常了?谢谢you@GemUbaldo您从
DB
哪里获得此
列表?我的意思是你在哪里调用了
getAllDoctorList()
?我的目标是在我的文本视图中显示id、全名、性别,这是mainactivity中的tv。。我尝试了一些教程,尤其是在我的主要活动中。抱歉,如果你不理解,但我希望你理解我的目标。我想在运行应用程序时显示它。我已经用谷歌搜索过了,我认为这段代码已经用于显示数据库中的列表,所以将其添加到onCreate()中:print(db.getAllDoctorList());我得到了这个错误“致命异常:主进程:com.example.jathniel.myapplication,PID:4539 java.lang.RuntimeException:无法启动活动组件信息{com.example.jathniel.myapplication/com.example.jathniel.myapplication.MainActivity}:android.database.sqlite.SQLiteException:没有这样的表:医生(代码1):,编译时:选择*FROM doctors“但doctors是数据库中表的正确名称
public class DoctorModel {

    public int id;
    public String full_name;
    public String gender;

    public DoctorModel(){

    }

    public DoctorModel(int id, String full_name, String gender) {
        // TODO Auto-generated constructor stub
        this.id = id;
        this.full_name = full_name;
        this.gender = gender;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getFull_name() {
        return full_name;
    }

    public void setFull_name(String full_name) {
        this.full_name = full_name;
    }

    public String getGender() {
        return gender;
    }

    public void setGender(String gender) {
        this.gender = gender;
    }
}
public class MainActivity extends AppCompatActivity {


    List<DoctorModel> list = new ArrayList<DoctorModel>();
    DatabaseHelper db;
    TextView tv;



    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        db = new DatabaseHelper(getApplicationContext());
        tv = (TextView) findViewById(R.id.tv);

        print(db.getAllDoctorList());

    }

    private void print(List<DoctorModel> list) {
        // TODO Auto-generated method stub
        String value = "";
        for(DoctorModel dm : list){
            value = value+"id: "+dm.id+", fullname: "+dm.full_name+" Gender: "+dm.gender+"\n";
        }
        tv.setText(value);
    }
}
   // looping through all rows and adding to list
    if (c.moveToFirst()) {
        do {

            DoctorModel doctor = new DoctorModel();
            doctor.id = c.getInt(c.getColumnIndex(KEY_ID));
            doctor.full_name = c.getString(c.getColumnIndex(KEY_FULLNAME));
            doctor.gender = c.getString(c.getColumnIndex(KEY_GENDER));

            doctorsArrayList.add(doctor); // add Object in ArrayList

        } while (c.moveToNext());
    }
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    db = new DatabaseHelper(getApplicationContext());
    tv = (TextView) findViewById(R.id.tv);

    // ADD THIS LINE:
    // NOW THIS WILL RUN WHEN OPENING/RUNNING THE APPLICATION
    print(db.getAllDoctorList());

}