0

我正在尝试从 FragmanActivity 调用对话框片段。我的对话框片段包括两个edittext 视图和两个按钮。

我阅读了 android 开发者用户指南,但我无法解决我的问题。(片段)我的问题是:DialogFragment 窗口看起来像一个小窗口。

我的对话框 XML:

<LinearLayout 
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="400dp"
android:layout_height="790dp"
android:orientation="horizontal" >

<EditText
   android:id="@+id/ePostionDate"
   android:inputType="date"
   android:layout_width="fill_parent"
   android:layout_height="wrap_content"
   android:hint="@string/lblDate"
   android:focusableInTouchMode="false"
   android:paddingLeft="5dip" />

<EditText
   android:id="@+id/eWaterPosition"
   android:layout_width="fill_parent"
   android:layout_height="wrap_content"
   android:inputType="numberDecimal"
   android:hint="@string/lblWaterPostion"
   android:paddingLeft="5dip" />

<TableLayout
    android:layout_width="fill_parent"
    android:layout_height="0dp"
    android:layout_weight="1.0" >

    <TableRow>
        <Button
            android:id="@+id/btnAddWaterposition"
            android:layout_width="0dp"
            android:layout_weight=".50"
            android:layout_height="wrap_content"
            android:text="@string/lblBtnFixData"
            android:layout_gravity="left" />
        <Button
            android:id="@+id/btnCancelWaterposition"
            android:layout_width="0dp"
            android:layout_weight=".50"
            android:layout_height="wrap_content"
            android:text="@string/lblBtnCancel"
            android:layout_gravity="right" />
    </TableRow>
</TableLayout>

我尝试调用 DialogFragment 的 FragmentActivity 的一部分:

        DialogFragment wpDialog = new WaterPositionEditActivity(getApplicationContext());
    wpDialog.show(getSupportFragmentManager(), "waterPositionSetter");

最后是我的 DialogFragment 类:

enter code here

@SuppressLint("ValidFragment") 公共类 WaterPositionEditActivity 扩展 DialogFragment {

private Context context;

public WaterPositionEditActivity(Context context) {
    super();
    this.context = context;
}

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    return inflater.inflate(R.layout.water_position, container, false);
}

}

我为 Android 2.2 创建了我的应用程序,但我希望它可以在 Android4 或更高版本上运行。

非常小的窗口如下所示: 部分截图

正如您在 img 上看到的,只有一个 edittext 字段显示,但还有另一个 editview 和两个按钮。所以这个小窗口应该比现在大,并显示所有布局元素!

任何人都可以帮助解决方案是什么?

4

1 回答 1

0

我找到了解决方案。我使用RelativeLayout 我忘了在XML 布局中为元素添加正确的位置。当我为元素添加正确的位置时,对话框窗口会按需要出现。

于 2013-06-07T12:00:14.997 回答