我正在尝试将自定义setString()
添加到ListPopupWindow
中包含的TextView
。 TextInputLayout
有一个OnClick侦听器,可以创建并显示TextView
。实际上,我正在开发一个自定义Spinner。
如果我将ListPopupWindow
更改为TextInputLayout
,LinearLayout
会正确显示。否则,视觉错误是弹出窗口底部的额外填充。
XML:
ListPopupWindow
CustomTextView:
<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.project.CustomTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
</android.support.design.widget.TextInputLayout>
结果:
答案 0 :(得分:0)
对于任何试图解决此问题的人:TextInputLayout是弹出窗口的锚点视图肯定是个问题。这是我现在如何解决它。基本上,将LinearLayout添加到TextInputLayout并使用其父级作为上下文。
LinearLayout menuAnchor = new LinearLayout(((ViewGroup) getParent()).getContext());
addView(menuAnchor, 0);
popup = new ListPopupWindow(menuAnchor.getContext());
popup.setAnchorView(menuAnchor);