popwindow

<?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="match_parent"
    android:orientation="vertical" >
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="请选择"
        />
    <RadioGroup
        android:id="@+id/rg"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        >
        <RadioButton
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="离线"
            />
        <RadioButton
             android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="隐身"
            />
          <RadioButton
             android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="在线"
            />

    </RadioGroup>

</LinearLayout>

弹出窗口的布局

<LinearLayout 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:orientation="vertical"
       >

    <TextView
        android:id="@+id/show"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="在线" />
    <Button
        android:id="@+id/btn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="状态"
        />

</LinearLayout>

主布局

package com.example.popwindow;

import android.os.Bundle;
import android.app.Activity;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.PopupWindow;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.RadioGroup.OnCheckedChangeListener;
import android.widget.TextView;

public class MainActivity extends Activity {
    private TextView show;
    private RadioGroup rg;
    private Button btn;
    private PopupWindow pop;
    private View v1;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        show = (TextView) findViewById(R.id.show);
        btn = (Button) findViewById(R.id.btn);
        btn.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                LayoutInflater in = LayoutInflater.from(MainActivity.this);
                v1 = in.inflate(R.layout.pop, null);//得到布局
                pop = new PopupWindow(v1,300,400 , true);//实例化弹出窗口
                rg = (RadioGroup) v1.findViewById(R.id.rg);//设置单选按钮点击事件
                rg.setOnCheckedChangeListener(new OnCheckedChangeListener() {

                    @Override
                    public void onCheckedChanged(RadioGroup group, int checkedId) {
                        //声明单选按钮     并且实例化
                        RadioButton rd = (RadioButton) v1.findViewById(group.getCheckedRadioButtonId());
                        show.setText(rd.getText().toString());
                        //关闭弹出窗口
                        pop.dismiss();
                    }
                });
                //显示弹出窗口          调用组件的按钮      位置              x,y
                pop.showAtLocation(btn, Gravity.CENTER, 0, 0);

            }

        });
    }
}
时间: 2025-01-15 22:25:08

popwindow的相关文章

自定义 Popwindow

popwindow 是比较常用的一种控件,为了灵活使用,会自定义 popwidow ,继承 popwindow. 这篇文章主要介绍如何自定义 popwindow ,同时响应 popwindow 中 view 的事件. 1. 定义 MenuPop 继承 popwindow 具体代码如下 : public class MenuPopwindow extends PopupWindow implements OnClickListener { private Context context; priv

popwindow 被魅族虚拟键挡住

之前在做项目的时候,做了一个分享的功能,调用的是友盟的第三方,功能实现的很完美,也完美分享了,但是在测试的时候,我用魅族X4的手机分享弹出的popwindow被手机自身的虚拟键挡住了,在网上找了好多资料,说可以把手机的虚拟键给关闭,却是也做到了,但是好像不太符合逻辑.看到qq的就不会被挡到心里很佩服qq的大神们是怎么做到的.经过我不断的在网上找popwindow的例子代码,终于发现在设置popwindow的高度的时候我设置成了wrap_content,在这里我觉得有必要讲一下wrap_conte

如何让popWindow显示在view上方

看了bilibili的客户端搜索按钮,很喜欢大爱!自己也想做个类似的(相似度 10% 哈哈) popWin的出现退出动画也可以自己设定,用过其方法setAnimationStyle(R.style.xxx)设置Style文件进而设置显示退出动画 <!-- popwindow进入和退出动画 --> <style name="popwin_anim_style"> <item name="android:windowEnterAnimation&qu

设置popWindow背景变暗

1.//popWindow命名为window. //首先给window设置一个背景颜色 ColorDrawable cd = new ColorDrawable(0x000000);  window.setBackgroundDrawable(cd);  // 产生背景变暗效果,设置透明度  WindowManager.LayoutParams lp = getWindow().getAttributes();  lp.alpha = 0.4f; //之前不写这一句也是可以实现的,这次突然没效果

Android高级控件——ViewPager、GridView、popwindow、SlideMenu(中)

Android高级控件--ViewPager.GridView.popwindow.SlideMenu(中) android:screenOrientation="locked"锁屏 android:screenOrientation="landscape"横屏锁定   <!--android:theme="@android:style/Theme.NoTitleBar.Fullscreen"  Activity 直接extends Act

android popwindow仿微信右上角弹出框,dialog底部显示

仿微信右上角弹出框 1.利用popwindow实现 2.popwindow的位置居于右上角 新建,弹出popwindow: /** 弹popwindow **/ <span style="white-space:pre"> </span>tv = (TextView) findViewById(R.id.textView1); <span style="white-space:pre"> </span>view_pop

FBReaderJ学习笔记(二):PopWindow实现自定义阅读页菜单

很少写技术博客,最常用的博客还是Lofter这个:chacePM.非技术博客. 另外基于FBReaderJ本人开发了一个阅读器:悦读.有兴趣的朋友可以去安装看看,支持一下. 以下是实现的菜单截图. MainMenuPopup ConfigPopup 本文使用的是FBReaderJ-2.2.2.1. 注意:本文不涉及具体界面设计,只谈思路. 1.结构 在正式动手改代码前,我们最好先搞清楚几个PopWindow的结构和继承关系,因为FBReaderJ的封装严密,容易走入死胡同. 整个跟popup相关

popwindow,弹出框,popwindow点击事件冲突问题很好的解决

尽量自己百度,莫问同事切记切记----最近的感叹,可能太急于求成了,所以以后要有耐心坚决自己搜自己找!!!! 今天说的是比较简单的popwindow,弹出框,这个其实挺简单的主要是有个地方比较可能会出问题就是点击事件 private void initPopWindow(final TextView tview) { final String[] name = { "份", "斤", "个", "人", "桌&quo

【转】android创建Popwindow弹出菜单的两种方式

方法一的Activity [java] view plaincopy package com.app.test02; import android.app.Activity; import android.os.Bundle; import android.view.Gravity; import android.view.MotionEvent; import android.view.View; import android.view.View.OnClickListener; import

Android应用Activity、Dialog、PopWindow窗口显示机制及源码分析

[工匠若水 http://blog.csdn.net/yanbober 转载烦请注明出处,尊重劳动成果] 1 背景 之所以写这一篇博客的原因是因为之前有写过一篇<Android应用setContentView与LayoutInflater加载解析机制源码分析>,然后有人在文章下面评论和微博私信中问我关于Android应用Dialog.PopWindow.Toast加载显示机制是咋回事,所以我就写一篇文章来分析分析吧(本文以Android5.1.1 (API 22)源码为基础分析),以便大家在应