zoukankan      html  css  js  c++  java
  • android入门 — PopupWindow

    第一步:自定义xml文件

    第二步:获取LayoutInflater对象

    第三步:调用inflate()方法获取View对象

    第四步:创建PopupWindow对象

    第五步:调用PopupWindow的showAsDropDown或者showAsLocation方法显示对话框

    activity.xml

    <?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:id="@+id/activity_main"
        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="es.source.code.activity.popupwindowtest_tencentclass.MainActivity">
    
        <Button
            android:id="@+id/btn"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerInParent="true"
            android:text="点击"
            android:onClick="btnClick"/>
    </RelativeLayout>
    

    layout_myself_dialog.xml

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:background="#fff"
        >
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="40dp"
            android:background="#0e2438"
            android:gravity="center"
            android:orientation="horizontal"
            >
            <TextView
                android:text="提醒"
                android:textSize="18sp"
                android:textColor="#fff"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />
    
        </LinearLayout>
    
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
    
            android:gravity="center"
            android:orientation="vertical"
            android:padding="10dp"
            >
            <TextView
                android:text="恭喜您,验证码发送成功"
                android:textSize="18sp"
                android:textColor="#000"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />
    
            <Button
                android:id="@+id/btn"
                android:text="确定"
                android:textColor="#fff"
                android:textSize="14sp"
                android:layout_width="66dp"
                android:layout_height="30dp"
                android:background="@drawable/bg4"
                android:layout_marginTop="10dp"/>
    
        </LinearLayout>
    
    </LinearLayout>
    

      

    MainActivity.class

    public class MainActivity extends AppCompatActivity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            //View view = this.getLayoutInflater().inflate(R.layout.layout_myself_dialog, null);
    
            LayoutInflater inflater = LayoutInflater.from(this);
            View myView = inflater.inflate(R.layout.layout_myself_dialog, null);
    
            popupWindow = new PopupWindow(myView, 600, 450);
            myView.findViewById(R.id.btn).setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    popupWindow.dismiss();
                }
            });
        }
    
        PopupWindow popupWindow;
        public void btnClick(View v)
        {
            popupWindow.showAsDropDown(v);
        }
    
    }
    

      

  • 相关阅读:
    为什么一段时间后网站后台自动退出 php中session过期时间设置
    php中的$_GET如何获取带有“#”的参数
    让页面在打开时自动刷新
    MySQL关联left join 条件on与where不同
    图形上下文的栈操作(保存和恢复)
    图形上下文的矩阵操作(平移-缩放-旋转)
    Quartz2D内存管理
    文字绘制-图片绘制-水印绘制思路
    UIBezierPath-完善曲线
    UIBezierPath-绘制基本图形
  • 原文地址:https://www.cnblogs.com/Mr24/p/6862332.html
Copyright © 2011-2022 走看看