Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發實例 >> android toast使用總結

android toast使用總結

編輯:Android開發實例

今天要實現一個這樣的效果,如下圖:

 

 

在首頁按下某個按鈕的時候,出現一個圖片提示用戶當前點擊了此按鈕。

1、首先考慮的是使用getWindowManager().addView的方式,然後交給handler方式.sendEmptyMessageDelayed(30, 3*1000);自身循環一次,getWindowManager().removeView掉此view。後來發現在用戶一直點此按鈕的時候,程序在不停的addView,且在三秒的時候在removeView的時候,程序會崩潰掉。

所以嘗試使用toast方式,不在使用線程方式實現此需求;

因為toast在狂點同一個觸發此toast中show條件的時候,toast反應會比較慢,這是因為toast要等上一個cancel的時候才會show,查看api中cancel方法:

Close the view if it’s showing, or don’t show it if it isn’t showing yet. You do not normally have to call this. Normally view will disappear on its own after the appropriate duration.

大致意思是不用再去判斷這個toast是否處於show狀態,只要執行此方法,toast都處於not show狀態。所以就解決了以上的問題。

2、接下來考慮到使用的是自定義的View,toast中有方法public void setView (View view);

直接setView就可以解決自定義的問題;

3、接下來考慮位置問題,默認toast是在靠近屏幕下方的位置。toast中有方法public void setGravity (int gravity, int xOffset, int yOffset),其中grvity指處在整個屏幕的什麼位置,這裡可以用Gravity.CENTER來設置;xOffset和yOffset分別指的是x軸偏移量和y軸偏移量。這裡我的需求是劇中,所以我都設置的0;

4、然後考慮的是用戶想設置顯示的時間長,很遺憾,toast不能設置具體的現實時間長,只提供了兩個參數來設置時間長,如下是api中說明:

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved