1、在類中寫入以下代碼
private TextView textView4;
public static final int DISPLAY_TEXT = 1;
String explainText = "這段文字會逐一顯現";//這個是要顯示的總文字
String displayExplainText = "";//這個是會從小到全的顯示的文字
//handler在接收到message(所含what欄位為1)時,顯示更新后的文字
private Handler handler = new Handler(Looper.getMainLooper()){
public void handleMessage(Message message){//handler接收到指令后分不同的情況對界面UI進行更新
switch(message.what){
case DISPLAY_TEXT:
textView4.setText(displayExplainText);
break;
default:
break;
}
}
};
2、在onCreate方法中寫入以下代碼
//開一個字執行緒,讓主界面中的文字逐一浮現
new Thread(new Runnable() {
@Override
public void run() {
for(int i=0; i<explainText.length(); i++){
displayExplainText = explainText.substring(0, i+1);
try {
Thread.sleep(90);
}catch (Exception e){
e.printStackTrace();
}
Message message = new Message();
message.what = DISPLAY_TEXT;
handler.sendMessage(message);
}
}
}).start();
3、原理:在子執行緒中不斷改變要顯示的String內容,然后再主執行緒對TextView控制元件的.setText()方法對文字進行顯示,即可表現出逐一的效果,
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/351006.html
標籤:其他
上一篇:Android---沉浸式狀態欄
下一篇:Error while waiting for device: The emulator process for AVD Pixel_2_XL_API_28 was killed.
