所以这是我的onCreateView方法:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
getDialog().getWindow().requestFeature(Window.FEATURE_NO_TITLE);
View view = inflater.inflate(R.layout.my_view, container, false);
...
return view;
}
布局本身是一个带
的LinearLayout<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
由于某种原因,在添加行getDialog().getWindow().requestFeature(Window.FEATURE_NO_TITLE);
后,对话框缩小以包装内容;实际上,其中一个TextView被强制将其一行包装成两行。
我希望Dialog填充屏幕的宽度,保存一些我指定的边距。
答案 0 :(得分:21)
使用此行并且它将是全宽的,无论孩子如何:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setStyle(DialogFragment.STYLE_NO_TITLE,
android.R.style.Theme_Holo_Light_Dialog_NoActionBar_MinWidth);
}
主题声明中的关键是NoActionBar_MinWidth
。
答案 1 :(得分:15)
我解决了这个问题,但我不喜欢问题或解决方案的原因。
问题在于,其中一个儿童观点是
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
将其更改为
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
做了这个伎俩。
答案 2 :(得分:-2)
将根视图的minWidth
属性设置为1000dp。