zoukankan      html  css  js  c++  java
  • Android 中PopupWindow使用 (转)

    参考学习后遇到问题:

    要引用:有好几个,可以用错误提示解决;

    import android.widget.PopupWindow;

    import android.widget.Toast;

    Activity调用过程 :

    首先定义一个BUTTON变量和mContext

        private Button mshowBtn;
        private Context mContext; 

      @Override
     protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      startService(new Intent(LoginActivity.this, MicroVideoService.class));
      bindXMPPService();
      setContentView(R.layout.loginpage);
      mContext=this;  
      initView();
     }

    //指定事件

      mshowBtn= (Button) findViewById(R.id.showbtn);
      mshowBtn.setOnClickListener(mshowBtnOnClickListener);

    //实现事件并调用

        private OnClickListener mshowBtnOnClickListener= new OnClickListener(){
     @Override
     public void onClick(View v) {
      showPopWindow(mContext,v);
     }
       
        };

    (转自:import android.widget.PopupWindow;)

    Android 中PopupWindow使用。

    PopupWindow会阻塞对话框,要在外部线程 或者 PopupWindow本身做退出才行。

    mypopWindow.xml的Layout设计如下

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:background="#259"
        android:orientation="vertical" >
     
        <TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Here is Pop Window" />
     
        <Button
            android:id="@+id/button1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="OK" />
     
        <Button
            android:id="@+id/button2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Cancle" />
     
    </LinearLayout>
     
    MainActivity.java文件。

     在MainActivity的Button按钮单击,然后显示PopupWindow。

    private void showPopWindow(Context context, View parent)
        {      
            LayoutInflater inflater = (LayoutInflater)             
                    context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);    
            final View vPopWindow=inflater.inflate(R.layout.mypopwindow, null, false); 
            //宽300 高300           
            final PopupWindow popWindow = new PopupWindow(vPopWindow,300,300,true);
            Button okButton = (Button)vPopWindow.findViewById(R.id.button1);
            okButton.setOnClickListener(new View.OnClickListener() {
                 
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    Toast.makeText(MainActivity.this, "You click OK", Toast.LENGTH_SHORT).show();
                }
            });
             
            Button cancleButton = (Button)vPopWindow.findViewById(R.id.button2);
            cancleButton.setOnClickListener(new View.OnClickListener() {
                 
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    popWindow.dismiss(); //Close the Pop Window
                }
            });
             
            popWindow.showAtLocation(parent, Gravity.CENTER, 0, 0);
             
             
        }
     
    效果图如下:最后显示是剧中的,这里我只是截取了部分图片。
     
    单击Ok按钮显示You click OK信息。单击取消,则关闭PopupWindow.
  • 相关阅读:
    Android开发 使用 adb logcat 显示 Android 日志
    【嵌入式开发】向开发板中烧写Linux系统-型号S3C6410
    C语言 结构体相关 函数 指针 数组
    C语言 命令行参数 函数指针 gdb调试
    C语言 指针数组 多维数组
    Ubuntu 基础操作 基础命令 热键 man手册使用 关机 重启等命令使用
    C语言 内存分配 地址 指针 数组 参数 实例解析
    CRT 环境变量注意事项
    hadoop 输出文件 key val 分隔符
    com.mysql.jdbc.exceptions.MySQLNonTransientConnectionException: Too many connections
  • 原文地址:https://www.cnblogs.com/jenson138/p/4028138.html
Copyright © 2011-2022 走看看