citypicker icon indicating copy to clipboard operation
citypicker copied to clipboard

期望控件覆盖在dialog上层,但是控件显示在dialog下层了

Open wanpeiyu opened this issue 5 years ago • 9 comments

wanpeiyu avatar Feb 15 '20 08:02 wanpeiyu

作者能看到吗?这个问题太重要了 因为这个控件需要在dialog上引用

wanpeiyu avatar Feb 28 '20 09:02 wanpeiyu

收到,正在修复,请等待

crazyandcoder avatar Mar 01 '20 03:03 crazyandcoder

同问,我也遇到这个问题了。

skyfouk avatar Mar 05 '20 06:03 skyfouk

能否贴一下具体如何在diaolog中使用的?我这边跟踪一下,方便解决

crazyandcoder avatar Mar 06 '20 03:03 crazyandcoder

使用方法和activity一样,只不过把控件放在dialog里面进行调用。

这种情况问题出在popwindow显示的parentView应该是dialog的rootView,而我们使用的是window。如下:

sharePopuWindown.showAtLocation(parentView, Gravity.BOTTOM | Gravity.CENTER_HORIZONTAL, 0, 0); 我们需要将parentView换成dialog.getRootView();

最好可以提供一个方法给外部调用 来设置传入的view对象
你这里直接是引用的activity的parentview对象 所以直接显示在了dialog下方

wanpeiyu avatar Mar 13 '20 11:03 wanpeiyu

解决;了吗

thatCbin avatar Nov 04 '20 02:11 thatCbin

可以使用反射,把showAtLocation的第一个View参数换成Dialog里面的就行了,目前针对5.2.2版本,我尝试了一下,可行。但我是用fragmentDialog来测试的,具体代码是: DCityPicker cityPicker = new JDCityPicker(); cityPicker.init(context); JDCityConfig jdCityConfig = new JDCityConfig.Builder().build(); jdCityConfig.setShowType(JDCityConfig.ShowType.PRO_CITY_DIS); cityPicker.setConfig(jdCityConfig); cityPicker.setOnCityItemClickListener(new OnCityItemClickListener() { @Override public void onSelected(ProvinceBean province1, CityBean city1, DistrictBean district) { if (callBack != null) { callBack.onCityPick(province1.getName(), city1.getName(), district.getName()); } }

        @Override
        public void onCancel() {
        }
    });

//开始反射获取 Class clazz = cityPicker.getClass(); try { Field field = clazz.getDeclaredField("popwindow"); field.setAccessible(true); Method method = clazz.getDeclaredMethod("initJDCityPickerPop"); method.setAccessible(true); method.invoke(cityPicker); PopupWindow popupWindow = (PopupWindow) field.get(cityPicker); if (!popupWindow.isShowing()) popupWindow.showAtLocation(view, Gravity.BOTTOM, 0, 0); } catch (Exception e) { e.printStackTrace(); }

a453826252 avatar Nov 29 '20 15:11 a453826252

解决;了吗

解决了,看上面

a453826252 avatar Nov 29 '20 15:11 a453826252

解决;了吗

解决了,看上面

OK

thatCbin avatar Nov 30 '20 02:11 thatCbin