android——懸浮窗控制元件Toast
阿新 • • 發佈:2019-02-09
前端
<?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.wuzuo.toast.MainActivity"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content"> <Button android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/button_toast" android:text="HAHA" android:textSize="60dp"/> </LinearLayout> </RelativeLayout>
後端
Toast 是一個懸浮窗控制元件,在不影響使用者操作的條件下,按動按鈕顯示懸浮窗。
不同的是,Toast不支援點選事件,需要函式呼叫。所以要在外部函式初始化我們按鈕的
控制元件,當我們的物件V創建出來時,在v呼叫函式toast
先建立一個Toast,並用Toast.makeTest(上下文(this),“顯示內容”,“時間”)
然後.show();
即可
package com.example.wuzuo.toast; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Toast; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); inint(); } private void inint() { findViewById(R.id.button_toast).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { showtoast(); } }); } private void showtoast() { Toast toast= Toast.makeText(this,"haha",Toast.LENGTH_LONG); toast.show(); } }
能顯示圖片的懸浮窗
Toast toast1=new Toast.makeText(this,“ XXXXX”,Toast.LENTH_SHORT);
LinearLayout toast_ linearlayout=(linearlayout)toast1.getView();
ImageView iv= new ImageView(this);
iv.setImageResource(R.mipmap.ic_launcher);
toast_layout.addView(iv,0);
toast1.show();
自定義懸浮窗
LayoutInflater inflater=LayoutInflater.from(this); View toast_view=inflater.inflate(R.layout.toast_linearlayout, null); Toast toast=new Toast(this); toast.setView(toast_view); toast.show();