|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
新建个项目,修改activity_main.xml- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:orientation="vertical">
- <Button
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="change_text"
- android:id="@+id/change_text" />
- <TextView
- android:id="@+id/text"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content" />
- </LinearLayout>
复制代码
修改mainactivity.java- package com.example.xinwei.androidthreadtest;
- import android.annotation.SuppressLint;
- import android.os.Handler;
- import android.os.Message;
- import android.support.v7.app.AppCompatActivity;
- import android.os.Bundle;
- import android.view.View;
- import android.widget.Button;
- import android.widget.TextView;
- public class MainActivity extends AppCompatActivity implements View.OnClickListener{
- public static final int UPDATE_TEXT=1;
- private static TextView text;
- @SuppressLint("HandlerLeak")
- private static Handler handler=new Handler(){
- @Override
- public void handleMessage(Message msg) {
- super.handleMessage(msg);
- switch (msg.what){
- case UPDATE_TEXT:
- text.setText("Nice to meet you");
- break;
- default:
- break;
- }
- }
- };
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- text=(TextView)findViewById(R.id.text);
- Button changeText=(Button)findViewById(R.id.change_text);
- changeText.setOnClickListener(this);
- }
- @Override
- public void onClick(View view) {
- switch (view.getId()){
- case R.id.change_text:
- new Thread(){
- @Override
- public void run() {
- Message message=new Message();
- message.what=UPDATE_TEXT;
- handler.sendMessage(message);
- }
- }.start();
- break;
- default:
- break;
- }
- }
- }
复制代码
这种方法一般很少用,一般都是直接在线程里用runOnUIThread方法来更新ui |
|