(转)Android Toast用法

Android Toast用于在手机屏幕上向用户显示一条信息,一段时间后信息会自动消失。信息可以是简单的文本,也可以是复杂的图片及其他内容(显示一个view)。

 

1.简单用法

Toast.makeText(midlet.getApplicationContext(), "用户名不能为空", Toast.LENGTH_LONG).show();

 

2.自定义显示位置效果

代码

toast = Toast.makeText(getApplicationContext(),
     "自定义位置Toast", Toast.LENGTH_LONG);
   toast.setGravity(Gravity.CENTER, 0, 0);
   toast.show();

 

3.带图片效果

 

代码

toast = Toast.makeText(getApplicationContext(),
     "带图片的Toast", Toast.LENGTH_LONG);
   toast.setGravity(Gravity.CENTER, 0, 0);
   LinearLayout toastView = (LinearLayout) toast.getView();
   ImageView imageCodeProject = new ImageView(getApplicationContext());
   imageCodeProject.setImageResource(R.drawable.icon);
   toastView.addView(imageCodeProject, 0);
   toast.show();

 

三、常量

 

       int  LENGTH_LONG

 持续显示视图或文本提示较长时间。该时间长度可定制。

       参见

              setDuration(int)

 

int  LENGTH_SHORT

持续显示视图或文本提示较短时间。该时间长度可定制。该值为默认值。

       参见

              setDuration(int)

 

  四、构造函数

 

       public Toast (Context context)

       构造一个空的 Toast 对象。在调用 show() 之前,必须先调用 setView(View)

(译者注: 只有使用 setView(View) 的时候,才使用 new Toast(Content content) 来得到 Toast 对象,否则必须用 makeText() 方法来创建 toast 对象,并且这种方式获得 Toast 对象不能使用 setText() 方法。

       参数

              context    使用的上下文。通常是你的 Application Activity 对象。

 

 

  五、公共方法

 

public int cancel ()

     如果视图已经显示则将其关闭,还没有显示则不再显示。一般不需要调用该方法。正常情况下,视图会在超过存续期间后消失。

 

public int getDuration ()

返回存续期间

       请参阅

              setDuration(int)

public int getGravity ()

     取得提示信息在屏幕上显示的位置。

    

Gravity

setGravity()

 

public float getHorizontalMargin ()

返回横向栏外空白。

 

public float getVerticalMargin ()

返回纵向栏外空白。

 

public View getView ()

返回 View 对象。

    

setView(View)

 

public int getXOffset ()

返回相对于参照位置的横向偏移像素量。

        Toast msg = Toast.makeText(Main.this, "Message", Toast.LENGTH_LONG);         msg.setGravity(Gravity.CENTER, msg.getXOffset() / 2, msg.getYOffset() / 2);         msg.show();

 

public int getYOffset ()

返回相对于参照位置的纵向偏移像素量。

 

public static Toast makeText (Context context, int resId, int duration)

生成一个从资源中取得的包含文本视图的标准 Toast 对象。

    参数

context

使用的上下文。通常是你的 Application Activity 对象。

resId

要使用的字符串资源 ID ,可以是已格式化文本。

duration

该信息的存续期间。值为 LENGTH_SHORT LENGTH_LON

     异常

      当资源未找到时抛异常 Resources.NotFoundException

 

public static Toast makeText (Context context, CharSequence text, int duration)

生成一个包含文本视图的标准 Toast 对象。

    参数

context

使用的上下文。通常是你的 Application Activity 对象。

resId

要显示的文本,可以是已格式化文本。

duration

该信息的存续期间。值为 LENGTH_SHORT LENGTH_LONG



public void setDuration (int duration)

设置存续期间。

    

LENGTH_SHORT

LENGTH_LONG

 

public void setGravity (int gravity, int xOffset, int yOffset)

设置提示信息在屏幕上的显示位置。

(译者注:自定义 Toast 的显示位置, 例如 toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0) 可以把 Toast定位在左上角。 Toast提示的位置 xOffset:大于 0向右移,小于 0向左移

    

Gravity

getGravity()

 

public void setMargin (float horizontalMargin, float verticalMargin)

设置视图的栏外空白。

    参数

        horizontalMargin         容器的边缘与提示信息的横向空白(与容器宽度的比)。

           verticalMargin             容器的边缘与提示信息的纵向空白(与容器高度的比)。

 

public void setText (int resId)

更新之前通过 makeText() 方法生成的 Toast 对象的文本内容。

    参数

        resId      Toast 指定的新的字符串资源 ID

 

public void setText (CharSequence s)

更新之前通过 makeText() 方法生成的 Toast 对象的文本内容。

    参数

        s   Toast 指定的新的文本。

 

public void setView (View view)

设置要显示的 View

(译者注: 注意这个方法可以显示自定义的toast视图,可以包含图像,文字等等。是比较常用的方法。

    

getView()

 

public void show ()

按照指定的存续期间显示提示信息。

参考:  博客园:http://www.cnblogs.com/

    Android中文翻译组:http://www.cnblogs.com/over140/  

参考:http://www.cnblogs.com/salam/archive/2010/11/10/1873654.html

 

 

你可能感兴趣的:(Android)