android popupWindow 中宽度莫名很大,求帮助?

这个是popupwindow的内容xml(就是放了个ListView):

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@color/ppw_settings_normal"
android:orientation="vertical" >

<ListView
    android:id="@+id/lv_ppw_settings_lists"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:dividerHeight="0dp"
    android:listSelector="@android:color/transparent" >
</ListView>

</LinearLayout>
展现popupwindow的时候,

public MenuPopup(final Context context) {
        **super(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);**
        View contentView = LayoutInflater.from(context).inflate(resId, null);
        ListView lv = (ListView) contentView
                .findViewById(R.id.lv_ppw_settings_lists);
        String[] menuItems = context.getResources().getStringArray(R.array.associator_query_menu);
        PopupSettingsAdapter adapter = new PopupSettingsAdapter(context, menuItems);
        ....
        }

我都用了wrap_content了
然而结果却是:
图片描述

醉了,这是什么缘故。。。

阅读 6.9k
3 个回答

因为wrap_content对ListView是不起效的,没有明确的width hight,默认都是会撑满。

。。用popupMenu吧。。那才是你想要的效果,并且比你这个简单美观多了

可能是ListView 的item的布局问题吧

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题