android studio创建线程并在线程内更新UI控件
发布日期:2021-05-13 22:04:17 浏览次数:16 分类:精选文章

本文共 4358 字,大约阅读时间需要 14 分钟。

Android���������������������������������������������

���Android���������������������������������������������������������������������������������������������������������������������������������������������Handler���������������������������������������������������������������������������������UI���������


1. ���������������������

���������������������������������Thread������������������������������������������������������������������

new Thread() {
@Override
public void run() {
// ������������������������������������������������
}
}.start();

������start()������������������������������������������������������������������������������������������������������������������������������������������������������������������


2. ���������������������Handler������

������������������������������Android���������Handler���������������������������������������������Handler���������������������������������������������������������UI������������������������������������������������

private Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case 1:
// ���Message������what���������1������������������UI������
// ���������������������������������
break;
default:
break;
}
}
};
// ������������������������������
new Thread() {
@Override
public void run() {
handler.sendEmptyMessage(1);
}
}.start();
  • **sendEmptyMessage(int)**���������������������������������������������msg.what���������������������������������������1������
  • ������������������������������handleMessage���������������������������������������������UI���������������

3. ������������

  • ���������������������

    ������new Thread()���������������������������������������run()������������������������������������������������������start()���������������

  • Handler���������

    Handler������Android������������������������������������������������������������������MessageQueue���������������������������������������������������������������������������handleMessage���������������

  • ������������������������

    ���sendEmptyMessage���������������������������������������msg.what���������������������������������������������������������������������msg.what������������������������������������������������������

  • UI���������������

    ������������������������������UI���������������������������Handler���������������������sendMessage���������������������������������������runOnUiThread���������������Handler���������������������������������������


  • 4. ������������

    ���������������������������

    import android.os.Handler;
    import android.os.Message;
    public class MainActivity extends AppCompatActivity {
    private Handler handler = new Handler();
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    // ���������������������������������������������
    Button button = findViewById(R.id.button);
    // ���������������������������������
    new Thread() {
    @Override
    public void run() {
    handler.sendEmptyMessage(1);
    }
    }.start();
    }
    @Override
    public void handleMessage(Message msg) {
    super.handleMessage(msg);
    switch (msg.what) {
    case 1:
    // ������������������
    button.setText("������������������");
    break;
    default:
    break;
    }
    }
    }

    5. ������������

  • ������������

    ���������������������������������������������������������������synchronized���������������Thread FAT spherical���������������������������

  • UI���������Atomicity

    Android������������runOnUiThread���Handler������������������������UI���������������������������������������������������������������������������UI������������������������������������������������������

  • ������������

    ������������������������������������������������������������������������������������������������������������������������������IntentService���AsyncTask������������


  • ������������������������������������������������������������������������������������UI������������������������������������������������������������������������������������������������UI������������������������

    上一篇:android studio 添加vitamio SDK
    下一篇:android studio 隐藏状态栏与标题栏

    发表评论

    最新留言

    逛到本站,mark一下
    [***.202.152.39]2025年04月27日 06时10分43秒