如何为多屏幕设置 android 对话框中编辑文本的高度?
how to set height of edit text in dialog in android for multiple screen?
我正在显示带有编辑文本的对话框。我想问一下如何设置对话框的高度。我用过 et_input.setHeight(100);但这接受像素值 phone dependent.Is 有任何常见的方法可以实现这一点。
代码如下:
public String inputPopUp(Context context)
{
inputBuilder=new AlertDialog.Builder(context);
final EditText et_input=new EditText(context);
et_input.setHint("Enter Description");
et_input.setHeight(100);
inputBuilder.setView(et_input);
inputBuilder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
mealDesc=et_input.getText().toString();
}
});
inputBuilder.show();
return mealDesc;
}
您可以使用将在 xml 文件中使用的 android 默认值,如下所示:layout_height="?listPreferredItemHeight"
然后它会自动适应屏幕大小。或者您可以在 values-hdpi、values-mdpi 中定义几个 dimens.xml,...您将添加一个键,如 <dimen name="edittext_height">30dp</dimen>
并在每个文件夹中更改它的值。但是第二种解决方案需要更多的工作并且不是很稳定...
在您应用的 dimens.xml 文件中定义维度。 dimens.xml 根据不同的设备大小会有所不同。阅读更多相关信息:Dimensions
完成此操作后,更改您的代码如下:
et_input.setHeight(MainActivity.this.getResources().getDimensionPixelSize(R.dimen.activity_horizontal_margin));
我正在显示带有编辑文本的对话框。我想问一下如何设置对话框的高度。我用过 et_input.setHeight(100);但这接受像素值 phone dependent.Is 有任何常见的方法可以实现这一点。
代码如下:
public String inputPopUp(Context context)
{
inputBuilder=new AlertDialog.Builder(context);
final EditText et_input=new EditText(context);
et_input.setHint("Enter Description");
et_input.setHeight(100);
inputBuilder.setView(et_input);
inputBuilder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
mealDesc=et_input.getText().toString();
}
});
inputBuilder.show();
return mealDesc;
}
您可以使用将在 xml 文件中使用的 android 默认值,如下所示:layout_height="?listPreferredItemHeight"
然后它会自动适应屏幕大小。或者您可以在 values-hdpi、values-mdpi 中定义几个 dimens.xml,...您将添加一个键,如 <dimen name="edittext_height">30dp</dimen>
并在每个文件夹中更改它的值。但是第二种解决方案需要更多的工作并且不是很稳定...
在您应用的 dimens.xml 文件中定义维度。 dimens.xml 根据不同的设备大小会有所不同。阅读更多相关信息:Dimensions
完成此操作后,更改您的代码如下:
et_input.setHeight(MainActivity.this.getResources().getDimensionPixelSize(R.dimen.activity_horizontal_margin));