Android Toast簡易訊息提示框的使用

來源:互聯網
上載者:User

Android中的Toast是一種簡易的訊息提示框,toast提示框不能被使用者點擊,toast會根據使用者佈建的顯示時間後自動消失。
 
 
建立Toast
 兩個方法建立Toast
Java代碼 
makeText(Context context, int resId, int duration) 
 
  參數:context是toast顯示在哪個上下文,通常是當前Activity;resId指顯示內容引用Resouce那條資料,就是從R類中去指定顯示的訊息內容;duration指定顯示時間,Toast預設有LENGTH_SHORT和LENGTH_LONG兩常量,分別表示短時間顯示和長時間顯示。
 
Java代碼 
makeText(Context context, CharSequence text, int duration) 
 
  參數context和duration與第一個方法相同,參數text可以自己寫訊息內容。
 
 用上面任意方法建立Toast對象之後調用方法show()即可顯示。
 
Java代碼 
Toast toast = Toast.makeText(ToastDemoActivity.this, "這是一個普通的Toast!", Toast.LENGTH_SHORT); 
toast.show(); 
 
 
 
 
設定Toast顯示位置
 兩個方法可以設定顯示位置:
 方法一:setGravity(int gravity, int xOffset, int yOffset)三個參數分別表示(起點位置,水平向右位移,垂直向下位移)
 方法二:setMargin(float horizontalMargin, float verticalMargin)
 以橫向和縱向的百分比設定顯示位置,參數均為float類型(水平位移正右負左,豎直位移正上負下)
 
Java代碼 
//設定Toast顯示位置(起點位置,水平向右位移,垂直向下位移) 
toast.setGravity(Gravity.TOP | Gravity.LEFT, 0, 200); 
//Toast顯示位置,以橫向和縱向的百分比計算,參數均為float類型(水平位移正右負左,豎直位移正上負下) 
toast.setMargin(-0.5f, 0f); 
 
 
自訂Toast
 下面這段代碼是從iteye抄過來的,顯示一個帶圖片的Toast效果:
Java代碼 
// 帶圖片的Toast 
        Button btn2 = (Button) findViewById(R.id.toast2); 
        btn2.setOnClickListener(new OnClickListener() { 
            public void onClick(View v) { 
                // 定義一個Toast 
Toast toast = Toast.makeText(ToastDemoActivity.this, "這是一個代圖片的Toast!", Toast.LENGTH_LONG); 
                // 定義一個ImageView 
                ImageView imageView = new ImageView(ToastDemoActivity.this); 
                imageView.setImageResource(R.drawable.icon); 
                // 獲得Toast的View 
                View toastView = toast.getView(); 
                // 定義一個Layout,這裡是Layout 
                LinearLayout linearLayout = new LinearLayout(ToastDemoActivity.this); 
                linearLayout.setOrientation(LinearLayout.HORIZONTAL); 
                // 將ImageView和ToastView合并到Layout中 
                linearLayout.addView(imageView); 
                linearLayout.addView(toastView); 
                // 替換掉原有的ToastView 
                toast.setView(linearLayout); 
                toast.show(); 
            } 
        }); 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.