[問題] TextView與Spinner問題

看板AndroidDev作者 (jjj)時間6年前 (2018/10/13 16:00), 6年前編輯推噓1(109)
留言10則, 6人參與, 6年前最新討論串1/1
各位大大好,小弟最近剛接觸Andorid 目前程式需要兩個功能,爬了一些文章可是還是沒看懂要如何應用 希望大大可以提供一些意見 1.想用下拉式選單提供秒數,讓旁邊的幻燈片可以按照選擇的秒數變化 2.要在打開程式後,TextView持續更新文字 爬文有看到很多方法,但好像幾乎都是按下按鈕後才能變化 以下是目前的程式碼,可是打開一秒後,app就會閃退 public class test extends AppCompatActivity { private static final int msgKey1 = 1; String random_text; private TextView t1; private Handler mHandler = new Handler() { public void handleMessage(Message msg) { super.handleMessage(msg); switch (msg.what) { case msgKey1: t1.setText(testRandom2()); break; default: break; } } }; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_test); TextView t1 = findViewById(R.id.t1); new TimerThread().start(); } private String testRandom2() { Random random = new Random(); String test1 = String.valueOf(random.nextInt(999) % (999 - 100 + 1) + 100); return test1; } public class TimerThread extends Thread { public void run() { do { try { Thread.sleep(1000); Message msg = new Message(); msg.what = msgKey1; mHandler.sendMessage(msg); } catch (InterruptedException e) { e.printStackTrace(); } } while (true); } } } -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.121.100.179 ※ 文章網址: https://www.ptt.cc/bbs/AndroidDev/M.1539417636.A.18D.html ※ 編輯: haley80208 (122.121.100.179), 10/13/2018 16:05:01

10/13 16:14, 6年前 , 1F
建議要最先學習看Logcat,找出是哪裡造成程式錯誤的
10/13 16:14, 1F

10/13 17:44, 6年前 , 2F
t1宣告兩次,mainThread才能刷新UI
10/13 17:44, 2F
謝謝兩位大大提醒,我再去研究意思

10/13 17:45, 6年前 , 3F
閃退資訊Logcat都有寫,先學會看吧
10/13 17:45, 3F
※ 編輯: haley80208 (42.77.21.50), 10/13/2018 18:04:24

10/13 20:22, 6年前 , 4F
閃退應該是NPE造成的,在onCreate裡宣告的導致外面的
10/13 20:22, 4F

10/13 20:23, 6年前 , 5F
t1仍然是null,之後你setText就會NPE
10/13 20:23, 5F

10/13 20:39, 6年前 , 6F
你不應該再onCreate()裡面再宣告一個t1 這樣跟外面的t1會是
10/13 20:39, 6F

10/13 20:40, 6年前 , 7F
不同一個 這種基礎要趕快補起來喔@@
10/13 20:40, 7F

10/13 20:56, 6年前 , 8F
謝謝各位的幫忙,目前第二個問題已經解決。有沒有大大
10/13 20:56, 8F

10/13 20:56, 6年前 , 9F
能幫忙第一個的問題,謝謝
10/13 20:56, 9F

10/14 00:37, 6年前 , 10F
spinner sample看看應該就可以了吧
10/14 00:37, 10F
文章代碼(AID): #1RmQOa6D (AndroidDev)
文章代碼(AID): #1RmQOa6D (AndroidDev)