1 package com.lian.mysqldemo2; 2 3 import androidx.appcompat.app.AppCompatActivity; 4 5 import android.os.Bundle; 6 import android.os.Handler; 7 import android.text.TextUtils; 8 import android.view.View; 9 import android.widget.TextView; 10 11 import com.lian.mysqldemo2.Dao.DailyDao; 12 import com.lian.mysqldemo2.Dao.UserDao; 13 import com.lian.mysqldemo2.bean.Daily; 14 import com.lian.mysqldemo2.bean.User; 15 16 import java.util.ArrayList; 17 import java.util.List; 18 19 public class TeacherShowActivity extends AppCompatActivity { 20 private TextView et_username; 21 private TextView tv_all_data; 22 private DailyDao dailyDao; 23 private Handler mainHandler; 24 25 private UserDao userDao;//用來獲取當前輸入該學生的stuid,然後透過id在每日總結中進行查詢 26 27 public TeacherShowActivity() { 28 } 29 30 @Override 31 protected void onCreate(Bundle savedInstanceState) { 32 super.onCreate(savedInstanceState); 33 setContentView(R.layout.activity_teacher_show); 34 et_username=findViewById(R.id.et_username); 35 tv_all_data=findViewById(R.id.tv_all_data); 36 dailyDao=new DailyDao(); 37 userDao=new UserDao(); 38 mainHandler=new Handler(getMainLooper()); 39 // new Thread(new Runnable() { 40 // @Override 41 // public void run() { 42 // List<Daily>list=new ArrayList<>(); 43 // list=dailyDao.getAll(); 44 // String result=""; 45 // for(int i=0;i<list.size();i++){ 46 // User user=userDao.getUserByStuid(list.get(i).getStuid()); 47 // System.out.println(list.get(i).getStuid()); 48 // result+="班級:"+user.getDept()+" 學號:"+user.getStuid()+" 姓名:"+user.getUsername()+" 打卡次數:"+"\n"; 49 // } 50 // tv_all_data.setText(result); 51 // } 52 // }).start(); 53 } 54 public void btn_show_data(View view){ 55 String username=et_username.getText().toString().trim();//獲取到輸入框中的username 56 57 //如果輸入框中無資料,就查詢daily中的所有資料,如果有資料就進行模糊查詢 58 new Thread(new Runnable() { 59 @Override 60 public void run() { 61 62 if(TextUtils.isEmpty(username)){ 63 // new Thread(new Runnable() { 64 // @Override 65 // public void run() { 66 // List<Daily>list=new ArrayList<>(); 67 // list=dailyDao.getAll(); 68 // String result=""; 69 // for(int i=0;i<list.size();i++){ 70 // User user=userDao.getUserByStuid(list.get(i).getStuid()); 71 // System.out.println(list.get(i).getStuid()); 72 // result+="班級:"+user.getDept()+" 學號:"+user.getStuid()+" 姓名:"+user.getUsername()+" 打卡次數:"+"\n"; 73 // } 74 // tv_all_data.setText(result); 75 // } 76 // }).start(); 77 List<Daily>list=new ArrayList<>(); 78 list=dailyDao.getAll(); 79 String result=""; 80 for(int i=0;i<list.size();i++){ 81 User user=userDao.getUserByStuid(list.get(i).getStuid()); 82 System.out.println(list.get(i).getStuid()); 83 result+="班級:"+user.getDept()+" 學號:"+user.getStuid()+" 姓名:"+user.getUsername()+" 打卡次數:"+"\n"; 84 } 85 String finalResult = result; 86 mainHandler.post(new Runnable() { 87 @Override 88 public void run() { 89 tv_all_data.setText(finalResult); 90 } 91 }); 92 // tv_all_data.setText(result); 93 } 94 95 } 96 }).start(); 97 98 } 99 }
這是在安卓開發中遇到的問題:
背景:需要將得到的字串result賦值給前端TextView變數,然後初始程式碼不包括85行,
報錯資訊:
之後新增上85行
然後就不報錯了