首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

带有ShowAtLocation的OnCreate中的PopupWindow -如何获取父视图?

在带有ShowAtLocation的OnCreate中的PopupWindow中,要获取父视图,可以通过以下步骤实现:

  1. 首先,创建一个PopupWindow对象,并设置其内容视图。
  2. 在设置PopupWindow的位置时,使用ShowAtLocation方法,并传入父视图的引用作为第一个参数。
  3. 在OnCreate方法中,可以通过调用findViewById方法来获取父视图的引用。这可以通过在Activity的布局文件中给父视图设置一个唯一的id来实现。
  4. 通过findViewById方法获取到父视图的引用后,将其作为第一个参数传递给ShowAtLocation方法。

下面是一个示例代码:

代码语言:txt
复制
public class MainActivity extends AppCompatActivity {
    private PopupWindow popupWindow;

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

        // 创建PopupWindow对象并设置内容视图
        popupWindow = new PopupWindow(this);
        View popupView = getLayoutInflater().inflate(R.layout.popup_layout, null);
        popupWindow.setContentView(popupView);

        // 获取父视图的引用
        View parentView = findViewById(R.id.parent_view);

        // 在OnCreate中使用ShowAtLocation方法设置PopupWindow的位置,并传入父视图的引用
        popupWindow.showAtLocation(parentView, Gravity.CENTER, 0, 0);
    }
}

在上述示例中,R.layout.activity_main是Activity的布局文件,其中包含了一个id为parent_view的父视图。R.layout.popup_layout是PopupWindow的布局文件。

请注意,这里的示例代码中没有提及腾讯云相关产品和产品介绍链接地址,因为PopupWindow并不是云计算领域的概念,也没有与云计算相关的腾讯云产品与之对应。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

如何onCreate获取View高度和宽度

如何onCreate获取View高度和宽度 在开发过程中经常需要获取到View宽和高,可以通过View.getWidth()和View.getHeight()来得到宽高。...然而新手们经常在onCreate方法中直接调用上面两个方法得到值是0! 这是为什么呢? 因为View绘制是通过两个遍历来完成,一个measure过程,一个layout过程。...而这一切是发生在onCreate方法之后。所以在onCreate中直接使用View.getWidth()和View.getHeight()是无法得到正确。...那应该怎么onCreate获取View宽高呢?...开发者可以通过View.post()方法来获取到View宽高,该方法传递一个Runnable参数,然后将其添加到消息队列,最后在UI线程执行。

5.3K20

Android底部弹窗实现示例代码

直接进入主题,按照套路,一步步实现利用PopupWindow实现底部弹窗。首先,写一个布局文件作为PopupWindow内容,布局文件如下 <?...注:因为采用填充布局方式,这里弹出窗口都是PopupWindow,所以点击左图中阴影弹窗不会消失,因为阴影也是PopupWindow呀!...下面看下利用PopupWindow实现底部弹窗代码,重要方法我会具体讲解 private void initPopupWindow() { //要在布局显示布局 contentView...0, 0); 这句代码是设置弹出窗口从哪里弹出, void showAtLocation (View parent,int gravity,int x,int y) 方法有四个参数,第一个参数是布局,...因为是继承Dialog,所以有Dialog特性,既触摸底部弹窗以外部分,弹窗会自动消失,这里就不在演示,可以在文末获取源码,自己实验一下就知道了。

4.3K31

干货一:通过自定义PopupWindow实现QQ菜单选项功能

概述 我们在使用手机QQ时,点击菜单键,会弹出如本案例说演示效果图似的菜单选项。 ? 实现方式有很多种,在这里我们来演示下如何通过自定义PopupWindow方式一步一步实现如上效果。...点击外部,PopupWindow可消失 …… 实现 自定义PopupWindow UI编写 位于布局底部 距边框有一定距离,根布局使用layout_margin即可 ListView(四个圆角+...代码注释已经非常详细了,再此就不多涉及了。...Context context; //视图 private View parentView; //item数据源 private List dataList;...,所以实例话PopupWindow时候,传入根布局View,实现接口回调Activity类实现自定义两个接口,并传入到PopupWindow

77330

Android UI设计与开发之PopupWindow仿腾讯新闻底部弹出菜单

前一篇文章中有用到 PopupWindow 来实现弹窗功能。简单介绍以下吧。 官方文档是这样解释:这就是一个弹出窗口,可以用来显示一个任意视图。出现弹出窗口是一个浮动容器的当前活动。...然后在主界面代码实例 PopupWindow ,指定弹出界面,在按钮点击事件显示或隐藏弹窗就可以了,代码如下: package com.yanis.demo; import android.app.Activity...void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_popup_window...,默认以锚定视图左下角为起点,这里为点击按钮 pop.showAsDropDown(v); } } }); } } 2.知道了怎么实现 PopupWindow 弹窗,利用其特性替换系统自带菜单栏...pop.dismiss(); } else { // 弹出窗口显示内容视图,默认以锚定视图左下角为起点,这里为点击按钮 pop.showAtLocation(hideView, Gravity.BOTTOM

1.2K51

Android 开发使用PopupWindow实现加载等待界面功能示例

用Activity实现方法请见我另一篇博客: Android 使用Activity实现加载等待界面 首先看效果: ?...用PopupWindow实现此功能还是比较简单,首先我们写一个布局,只有一个登录按钮,用于触发等待界面: <?xml version="1.0" encoding="utf-8"?...popupWindow.showAtLocation(getWindow().getDecorView(), Gravity.CENTER,0,0); new Handler().postDelayed...(); } },2000); } } 其中弹出PopupWindow需要一个布局,也就是简单放入一个ProgressBar: <?...更多关于Android相关内容感兴趣读者可查看本站专题:《Android控件用法总结》、《Android开发入门与进阶教程》、《Android视图View技巧总结》、《Android编程之activity

1K30

Android自定义实现滚动选择器

在开发过程,现有的控件满足不了功能需求,这个时候就需要我们自定义控件了。最近在开发需要实现滚动进行类别的选择,也就是我们所说滚动选择器,这里我们自定义来实现这个功能。...实现步骤: 1、先看需要实现效果图 2、实现自定义控件(PickerScrollView ) 3、popupwindow实现类(CommonPopWindow ) 4.主界面(MainActivity...实现类(CommonPopWindow ) /** * popupwindow */ public class CommonPopWindow { private static PopupWindow...GetConfigReq.DatasBean> datasBeanList; private String categoryName; @Override protected void onCreate...需要Demo童鞋底部公众号回复:"滚动选择器"即可获取。 小编整理了一份Android电子书籍,需要童鞋关注公众号回复:"e_books" 即可获取哦!

3.9K42

Android项目实战(十七):QQ空间实现(二)—— 分享功能 弹出PopupWindow

,注意 容器需要有一个id,因为我们需要它来给PopupWindow设置弹出位置 <RelativeLayout xmlns:android="http://schemas.android.com...; // 打开<em>popupWindow</em><em>的</em>按钮 private ImageButton btn_more; @Override protected void <em>onCreate</em>...布局文件<em>中</em><em>的</em>id 来执行相应<em>的</em>点击事件 case R.id.fp_linear_sharetoWeixin: Toast.makeText...<em>中</em><em>的</em>任意按钮,记得关闭此<em>popupWindow</em>, feedSelectPopupWindow.dismiss(); } }; /**...()方法上,那么要注意<em>PopupWindow</em>和Dialog一样是需要依赖于Activity存在<em>的</em> 所以不要在<em>onCreate</em>()方法中使用 .<em>showAtLocation</em>()方法 ,因为这个时候Activity

1.1K60

Android 开发使用PopupWindow实现弹出警告框复用类示例

本文实例讲述了Android 开发使用PopupWindow实现弹出警告框复用类。...分享给大家供大家参考,具体如下: Android开发相信下图所示界面大家都不陌生,该种弹出框使用频率也是极高,所以我专门谢了个类用于方便弹出该界面。...(true); popupWindow.setFocusable(true); popupWindow.setContentView(popView); popupWindow.showAtLocation...popupWindow; private Button button; @Override protected void onCreate(Bundle savedInstanceState...更多关于Android相关内容感兴趣读者可查看本站专题:《Android控件用法总结》、《Android开发入门与进阶教程》、《Android视图View技巧总结》、《Android编程之activity

1.7K50

Android技能树 — PopupWindow小结

我们可以一步步来看如何实现: 1.基础使用教程 既然要跳出下面的弹框,而且本文说过要使用PopupWindow,所以就是实现一个PopupWindow即可,十分简单。...这些内容: 显示contentView PopupWindow要显示宽和高, PopupWindow是否有获取焦点能力(默认false)。...PopupWindow显示在这个控件下方;而showAtLocation是相对于屏幕,可以通过设置Gravity来指定PopupWindow显示在屏幕那个位置。...这里我要额外提上面封装类代码二个知识点: 知识点1. 提前知道popupwindow宽高。...,所以我们只需要在我们工具类默认设置PopupWindowtouchable和focusable为true,这样,我们点击事件啥都不用改,就可以点击一下出现,再点击消失。

1.4K11

Android技能树 — PopupWindow小结

所以我们可以先来看下我们需要下拉框样式:(为了随便举个例子,所以设计比较丑): 我们可以一步步来看如何实现: 1.基础使用教程 既然要跳出下面的弹框,而且本文说过要使用PopupWindow,所以就是实现一个...这些内容: 显示contentView PopupWindow要显示宽和高, PopupWindow是否有获取焦点能力(默认false)。...} public void showAtLocation(IBinder token, int gravity, int x, int y){ ....... } 比如我们写入代码是:popupWindow.showAtLocation...因为第一次点击前,PopupWindow还没出现在屏幕过,所以也没有被绘制出来过,宽度当然也获取不到准确值了。出现过一次后,第二次点击就能正确获取了。...,所以我们只需要在我们工具类默认设置PopupWindowtouchable和focusable为true,这样,我们点击事件啥都不用改,就可以点击一下出现,再点击消失。

22910
领券