消息機(jī)制,對(duì)于Android開發(fā)者來說,應(yīng)該是非常熟悉。對(duì)于處理有著大量交互的場(chǎng)景,采用消息機(jī)制,是再好不過了。有些特殊的場(chǎng)景,比如我們都知道,在Android開發(fā)中,子線程不能更新UI,而主線程又不能進(jìn)行耗時(shí)操作,一種常用的處理方法就是,在子線程中進(jìn)行耗時(shí)操作,完成之后發(fā)送消息,通知主線程更新UI?;蛘呤褂卯惒饺蝿?wù),異步任務(wù)的實(shí)質(zhì)也是對(duì)消息機(jī)制的封裝。
關(guān)于子線程到底能不能更新UI這個(gè)問題,之前看到一篇文章很有趣,讓我對(duì)這個(gè)問題也有了新的認(rèn)識(shí),那么我也來寫個(gè)簡(jiǎn)單例子測(cè)試下,布局文件如下:
<?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>
延伸閱讀
學(xué)習(xí)是年輕人改變自己的最好方式