記錄開發時的小問題 執行緒的使用

2021-06-16 18:01:16 字數 722 閱讀 9515

這次的乙個小demo是集合了ar和地圖兩大功能。採用tabhost把兩個功能集中在頁面底部,進而實現對功能的乙個展示,可是問題是當初採用button控制項時,可以很好地實現兩大功能,地圖也能完成定位的功能。但是換成tabhost後,地圖還是會出現,卻實現不了定位功能。經過對輸出日誌的檢視,發現原來是因為我把所有的功能都寫到了主線程裡。導致主線程承受不了太多的功能,因此會出現「罷工」現象。問題找到了就要解決問題了,接下來就是對執行緒的使用。

android有兩種方式處理執行緒:

使用handler

建立後台執行緒最友好的辦法是建立乙個handler子類的例項。只需乙個handler對應乙個activity。自定義的後台執行緒可與handler通訊,handler將與ui執行緒一起工作。

和handler通訊,需要兩個選項,message和runnable物件。

message

傳送message到handler,第一步呼叫obtainmessage(),從池中得到message物件。

然後,可通過訊息佇列將message傳送給handler,通過sendmessage…()方法族:

為了處理message,handler需要實現handlemessage(),當message出現在佇列中時,會呼叫handlemessage()方法。另外,handler可在需要時更新ui。

以下示例演示乙個進度條,每隔1秒鐘增加1/20個單位。

使用git時遇到的小問題

question1 git提示 不是內部或外部命令,也不是可執行的程式 answer1 這是因為你安裝了git之後,並沒有進行配置環境變數 設定系統變數的目的 為了使系統可以找到程式的執行路徑!解決方法 1 找到git安裝路徑下的bin檔案和git core檔案 2 配置環境變數 path下新建 q...

執行緒的小問題

看乙個問題,匿名內部類和重寫的問題 public class test01 start 結果應該是什麼呢?先不看上面的 下面的 結果是什麼?public class test01 start 不難看出,和結果應該是輸出繼承了thread類的匿名物件鎖重寫的run方法的結果 test 那麼我們再回過頭...

使用Entity開發遇到的小問題

1 異常 entitycommandexecutionexception 儲存區資料提供程式返回的資料讀取器所具有的列數對於所請求的查詢不夠。這個異常是因為儲存過程匯入函式呼叫的異常。過程的 alter procedure dbo eware get identity id table name n...