「MyDialog extends Dialog」にスクロールを追加する方法を教えてください。
コンポーネント(EditTextなど)を持つMyDialogがあり、フィールドに何かを入力したい場合、キーボードを離れ、一部のコンテンツが範囲外に失われます。たとえば、別のフィールドに何かを入力してキーボードを非表示にするには、別の入力フィールドを選択します。すべてが収まらない場合でも、火の内容をスクロールするためにキーボードを非表示にする必要がないことが望ましいでしょう。
ありがとうございました。
「MyDialog extends Dialog」にスクロールを追加する方法を教えてください。
コンポーネント(EditTextなど)を持つMyDialogがあり、フィールドに何かを入力したい場合、キーボードを離れ、一部のコンテンツが範囲外に失われます。たとえば、別のフィールドに何かを入力してキーボードを非表示にするには、別の入力フィールドを選択します。すべてが収まらない場合でも、火の内容をスクロールするためにキーボードを非表示にする必要がないことが望ましいでしょう。
ありがとうございました。
私は最近このようなことをしなければなりませんでした。うまくいけば、これがあなたを助けるかもしれません:
// 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が初めてで、私が行ったことはうまくいきます:)
必要なスクロールバーを持つレイアウトを構築し、カスタムダイアログを構築するダイアログに追加できます。
ダイアログとそのコンテンツの間に ScrollView を追加するだけです。次のフィールドのサポートをキーボードに追加する場合は、これで十分です。また、手動でビューをスクロールできます。