0

告诉我如何将滚动添加到“MyDialog 扩展对话框”。

MyDialog 有组件(EditText 等),如果我想在该字段中输入内容,离开键盘,并且某些内容会丢失超出范围。例如,要在另一个字段中键入内容以隐藏键盘,然后选择不同的输入字段。最好不要隐藏键盘来滚动火的内容,如果不是全部合适的话。

谢谢你。

4

3 回答 3

1

我最近不得不做这样的事情,希望这可以帮助你:

    // Create a ScrollView so the dialog can scroll
    ScrollView scrollView = new ScrollView(getActivity());
    scrollView.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT,
            LayoutParams.WRAP_CONTENT));

    // Create layout for the controls in the dialog
    LinearLayout lay = new LinearLayout(getActivity());
    lay.setOrientation(LinearLayout.VERTICAL);
    lay.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT));

    // Create a TextView to add to the dialog
    TextView productNameLabel = new TextView(getActivity());
    productNameLabel.setText("Some text");
    productNameLabel.setGravity(Gravity.CENTER);
    productNameLabel.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,
            LayoutParams.WRAP_CONTENT, 1f));

    // Add the views to the layout
    lay.addView(productNameLabel);

    // Add the layout to the scrollview
    scrollView.addView(lay);

    // Create the dialog
    final AlertDialog.Builder b = new AlertDialog.Builder(getActivity())
            .setTitle("Dialog Title")
            .setPositiveButton("OK", new DialogInterface.OnClickListener() {

                @Override
                public void onClick(DialogInterface dialog, int which) {
                    // Do something when OK is clicked
                }

            }).setNegativeButton("Cancel", new DialogInterface.OnClickListener() {

                @Override
                public void onClick(DialogInterface dialog, int which) {
                    // Do something when Cancel is clicked
                }

            });

    // Tell the dialog to use the ScrollView
    b.setView(scrollView);

    // Show the dialog
    b.create().show();

这可能不是最好的做事方式,但我是 Android 新手,我所做的工作:)

于 2013-05-16T15:13:33.893 回答
0

只需在对话框及其内容之间添加一个 ScrollView。如果为键盘添加下一个字段支持,这就足够了。您可以手动滚动视图。

于 2013-05-16T14:27:12.743 回答
0

您可以构建具有所需滚动条的布局,并将其添加到构建自定义对话框的对话框中。

于 2013-05-16T14:36:11.107 回答