91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PopupWindow自定義位置顯示的實現代碼

發布時間:2020-09-18 22:46:54 來源:腳本之家 閱讀:326 作者:與我常在i 欄目:移動開發

一、概述

在Android中彈出式菜單(以下稱彈窗)是使用十分廣泛的一種菜單呈現方式,彈窗為用戶交互提供了便利。關于彈窗的實現大致有以下兩種方式AlertDialog和PopupWindow,當然網上也有使用Activity并配合Dialog主題的方式實現彈窗,有興趣的朋友也可以去研究一下。對于AlertDialog和PopupWindow兩者最主要的區別就是顯示的位置問題:

(1)AlertDialog在位置顯示上是固定的
(2)PopupWindow相對比較隨意,能夠在主屏幕的任意位置顯示。

二、效果圖

PopupWindow自定義位置顯示的實現代碼

三、代碼

(1)MainActivity中的代碼:

public class MainActivity extends AppCompatActivity {

  private int x;
  private int y;

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

  }

  @Override
  public boolean onTouchEvent(MotionEvent event) {

    // 獲得點擊屏幕的坐標

    x = (int) event.getX();
    y = (int) event.getY();

    // 加載PopupWindow 對應的界面
    LayoutInflater inflater = getLayoutInflater();
    final View popupView = inflater.inflate(R.layout.popup_entry_layout,null);

    // 創建PopupWindow 對象
    final PopupWindow popupWindow = new PopupWindow(popupView,400,100); // 第二、第三個參數用來設置彈窗的大小,也可以用WRAP_CONTENT

    // 設置位置
    popupWindow.showAtLocation(popupView, Gravity.NO_GRAVITY,x,y);

    new Handler().postDelayed(new Runnable() {
      @Override
      public void run() {

        // 1秒后關閉該彈窗

        popupWindow.dismiss();

      }
    },1000);

    return true;
  }
}

(2)布局文件中的代碼省略。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

中牟县| 巴楚县| 舒城县| 台北县| 通渭县| 车险| 开阳县| 松潘县| 湖南省| 靖安县| 崇文区| 福鼎市| 巩留县| 海宁市| 黑水县| 都安| 龙南县| 云林县| 驻马店市| 手游| 盘山县| 同仁县| 沁水县| 灵山县| 凤城市| 镇江市| 邹城市| 哈巴河县| 德安县| 信宜市| 湘乡市| 江油市| 威远县| 开平市| 文登市| 天长市| 湟源县| 辰溪县| 南宁市| 天祝| 安乡县|