Articles of popupwindow

PopupView没有显示?

这是XML(只是一个webview): 和代码: final View cView = getLayoutInflater().inflate(R.layout.couponlayout, null); PopupWindow pw = new PopupWindow(cView); pw.showAtLocation(findViewById(R.id.mainLayout), Gravity.CENTER, 100, 100); pw.update(); 这是在button.onClick()方法中。 当我单击按钮时,应该发生的其他事情(按钮改变颜色,文本等),但PopupWindow不会显示。 我一直在梳理网络,但找不到任何修复。 我究竟做错了什么? 编辑:没有人知道发生了什么? 我觉得这是一个常见的问题。

Android PopupWindow可以显示另一个PopupWindow吗?

Android PopupWindow可以显示另一个PopupWindow吗? 可以在同一时间打开多少PopupWindow? 只有一个? 第一个PopupWindow正常显示。 但是在按钮点击(在第一个PopupWindow内容视图中)我有一个例外: 08-13 16:28:38.682: ERROR/AndroidRuntime(11760): FATAL EXCEPTION: main android.view.WindowManager$BadTokenException: Unable to add window — token android.view.ViewRootImpl$W@41286250 is not valid; is your activity running? at android.view.ViewRootImpl.setView(ViewRootImpl.java:600) at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:313) at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:215) at android.view.WindowManagerImpl$CompatModeWrapper.addView(WindowManagerImpl.java:140) at android.view.Window$LocalWindowManager.addView(Window.java:537) at android.widget.PopupWindow.invokePopup(PopupWindow.java:992) at android.widget.PopupWindow.showAsDropDown(PopupWindow.java:901) at org.example.qberticus.quickactions.BetterPopupWindow.showLikePopDownMenu(BetterPopupWindow.java:159) at org.example.qberticus.quickactions.BetterPopupWindow.showLikePopDownMenu(BetterPopupWindow.java:129) at name.antonsmirnov.android.popup.ui.MainActivity$1$1.run(MainActivity.java:44) at android.app.Activity.runOnUiThread(Activity.java:4170) at name.antonsmirnov.android.popup.ui.MainActivity$1.onClick(MainActivity.java:42) at android.view.View.performClick(View.java:3558) at android.view.View$PerformClick.run(View.java:14157) […]

即使setFocusable(true),PopupWindow中的EditText也不显示键盘

我似乎无法完成这项工作。 我已经将popWindow设置为关注我在其他论坛上阅读的内容,但仍然没有运气。 XML java的 case(R.id.settings): switch (event.getAction()) { case MotionEvent.ACTION_DOWN: v.setBackgroundResource(R.drawable.cpanel2); return true; case MotionEvent.ACTION_UP: v.setBackgroundResource(R.drawable.cpanel1); LayoutInflater layoutInflater = (LayoutInflater)getBaseContext().getSystemService(LAYOUT_INFLATER_SERVICE); View popSwitchView = layoutInflater.inflate(R.layout.settings_xml, null); final PopupWindow popWindow = new PopupWindow(popSwitchView); popWindow.setWidth(LayoutParams.MATCH_PARENT); popWindow.setHeight(LayoutParams.MATCH_PARENT); popWindow.showAtLocation(popSwitchView, Gravity.CENTER, 0, 0); popWindow.setOutsideTouchable(false); popWindow.setFocusable(true); Drawable d = getResources().getDrawable(R.drawable.popbg); popWindow.setBackgroundDrawable(d); Button CancelButton = (Button)popSwitchView.findViewById(R.id.cancel); CancelButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View […]

Android中的对话框和popup窗口

http://developer.android.com/design/building-blocks/dialogs.html中的Android设计文档明确区分了对话框,警报,popup窗口和Toast。 它还建议通过DialogFragment类和Toast类通过Toast类实现Dialogs 。 但是我不清楚是否应该使用PopupWindow或DialogFragment实现DialogFragment 。 我知道DialogFragments通常带有Ok / Cancel按钮,并且可以定义PopupWindows的位置,但是: 这些细微的差异是使用其中一个的唯一论据吗? DialogFragment是PopupWindow的后续版本,在某些时候会被弃用吗? 根据https://stackoverflow.com/a/15165554/2482894中的答案,PopupWindow“仅限于几个模板”,但我在类文档中找不到对有限数量模板的任何引用。 那么,最后,你将如何实现像这些http://img.androidcookie.com/android/dialogs_popups_example.png这样的Popup ,为什么?

PopupWindow z订购

我使用PopupWindow播放菜单,它与EditText重叠。 它工作正常,只是我的PopupWindow与EditText IME系统中的一些项目重叠(选择标记,粘贴按钮)。 我的问题是:如何强制我的PopupWindow的z排序,使它出现在那些装饰上面? 这是正在发生的事情的形象。 我需要在所有内容上绘制我的PopupWindow(菜单),从而以某种方式告诉WindowManager如何订购窗口。 谢谢。

Android PopupWindow showAsDropDown()无法正常工作

我正在使用PopupWindow和showAsDropDown(锚)。 当锚点位于屏幕顶部时,它可以正常工作,但是当屏幕底部没有显示任何内容时。 根据PopupWindow.showAsDropDown()的文档,这应该工作: http://developer.android.com/reference/android/widget/PopupWindow.html#showAsDropDown%28android.view.View%29 “在锚点视图左下角的popup窗口中显示内容视图。如果屏幕上没有足够的空间来完整显示popup窗口,则此方法会尝试查找要滚动的父滚动视图。没有父卷轴视图可以滚动,popup窗口的左下角固定在锚点视图的左上角。“ 据推测,popup窗口始终锚定在锚点视图的左下角。 我该如何解决?

popup窗口上的EditText

我正在使用Java在Android 2.2上进行开发。 我在PopupWindow上放了一个editText,它不能正常工作。 它就像一个禁用的编辑文本,单击编辑文本将不会显示软键盘。 如何在popupWindow上添加编辑文本?

Android Nougat PopupWindow showAsDropDown(…)Gravity无法正常工作

我有这个代码。 PopupWindow popUp = new PopupWindow(); popUp.setFocusable(true); popUp.setOutsideTouchable(true); popUp.setWidth(ViewGroup.LayoutParams.MATCH_PARENT); popUp.setHeight(600); popUp.setContentView(anchorView); popUp.showAsDropDown(anchorView); popUp.update(); 它完美适用于Android版<Android Nougat。 但在Android Nougat中,弹出窗口显示在屏幕顶部而不是相对于锚点视图。

来自PopupWindow的Android ListView的setOnItemClickListener未被调用

我正在尝试从PopupWindow显示ListView。 但是,当我尝试调用ListView的setOnItemClickListener时,没有任何问题可以解决。 这是Java文件 PopupWindowActivity.java public class PopupWindowActivity extends Activity { String[] data = { “DATA 1”, “DATA 2”, “DATA 3”, “DATA 4”, “DATA 5”, “DATA 6” }; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.a); final Button btnOpenPopup = (Button) findViewById(R.id.openpopup); btnOpenPopup.setOnClickListener(new Button.OnClickListener() { public void […]

PopupWindow – 没有在一些设备上工作

我使用以下代码来显示一个小popup窗口: public static PopupWindow showImportMenu(Activity activity, View anchor, PopupWindowClickListener onClickListener) { LayoutInflater inflater = LayoutInflater.from(activity); PopupImportBinding binding = DataBindingUtil.inflate(inflater, R.layout.popup_import, null, false); if (!RootTools.isRootAvailable()) binding.llImportRootMethod.setVisibility(View.GONE); PopupWindow popupWindow = new PopupWindow(activity, null, R.attr.popupMenuStyle); popupWindow.setFocusable(true); popupWindow.setContentView(binding.getRoot()); popupWindow.setOutsideTouchable(true); PopupWindowCompat.showAsDropDown(popupWindow, anchor, 0, 0, Gravity.BOTTOM); View.OnClickListener clickListener = new View.OnClickListener() { @Override public void onClick(View view) { onClickListener.onClick(popupWindow, view); } […]