Android 通過Handler獲取當前時間
阿新 • • 發佈:2018-12-18
一言不合就上程式碼
public class HandlerDemoActivity extends AppCompatActivity { private Button getTime; private TextView setTime; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_handler_demo); getTime = (Button) findViewById(R.id.getTime); setTime = (TextView) findViewById(R.id.setTime); getTime.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { MyThread myThread = new MyThread(); Thread t1 = new Thread(myThread); t1.start(); } }); } Handler handler = new Handler(){ @Override public void handleMessage(Message msg) { if (msg.what == 0x11){ setTime.setText(msg.getData().getString("time")); } } }; class MyThread implements Runnable{ @Override public void run() { try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } //MM表示月份從1開始,mm表示月份從0開始 //HH表示24小時制,hh表示12小時制 //SimpleDateFormat導這個包--import java.text.SimpleDateFormat String time = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss").format(new Date()); Bundle bundle = new Bundle(); Message message = new Message(); //將資料繫結到Bundle上 bundle.putString("time",time); //bunndle傳值,耗時,效率低 message.setData(bundle); //傳送message資料 handler.sendMessage(message); //標誌是哪個執行緒傳過來的 message.what = 0x11; } } }
想說的都在註釋裡
xml檔案裡就一個Button,一個TextView,so easy