消息機(jī)制,對(duì)于Android開(kāi)發(fā)者來(lái)說(shuō),應(yīng)該是非常熟悉。對(duì)于處理有著大量交互的場(chǎng)景,采用消息機(jī)制,是再好不過(guò)了。有些特殊的場(chǎng)景,比如我們都知道,在Android開(kāi)發(fā)中,子線程不能更新UI,而主線程又不能進(jìn)行耗時(shí)操作,一種常用的處理方法就是,在子線程中進(jìn)行耗時(shí)操作,完成之后發(fā)送消息,通知主線程更新UI?;蛘呤褂卯惒饺蝿?wù),異步任務(wù)的實(shí)質(zhì)也是對(duì)消息機(jī)制的封裝。

  關(guān)于子線程到底能不能更新UI這個(gè)問(wèn)題,之前看到一篇文章很有趣,讓我對(duì)這個(gè)問(wèn)題也有了新的認(rèn)識(shí),那么我也來(lái)寫(xiě)個(gè)簡(jiǎn)單例子測(cè)試下,布局文件如下:

Android培訓(xùn),安卓培訓(xùn),手機(jī)開(kāi)發(fā)培訓(xùn),移動(dòng)開(kāi)發(fā)培訓(xùn),云培訓(xùn)培訓(xùn)

<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.joy.messagetest.MainActivity">

    <TextView        android:id="@+id/tv_test"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:text="Hello World!" /></RelativeLayout>

網(wǎng)友評(píng)論