AlertDialog,alertdialogbuilder用法
怎么设置 AlertDialog窗口的大小
1)更改AlertDialog窗口大小的方法:
AlertDialog dialog = new AlertDialog.Builder(this).create();
dialog.show();
WindowManager.LayoutParams params = dialog.getWindow().getAttributes();
params.width = 200;
params.height = 200 ;
dialog.getWindow().setAttributes(params);
2)去除边框
AlertDialog.setView(view,0,0,0,0);
如何自定义alertdialog样式
可以完全自定义样式,setView 这个方法就可以 ;
参考如下:
AlertDialog.Builder builder = new AlertDialog.Builder(new ContextThemeWrapper(this, R.style.AlertDialogCustom));
然后自定义自己的样式就可以了;
?xml version="1.0" encoding="utf-8"?
resources
style name="AlertDialogCustom" parent="@android:style/AlertDialog"
item name="android:textColor"#00FF00/item
item name="android:typeface"monospace/item
item name="android:textSize"10sp/item
/style
/resources
如何修改AlertDialog的主题
修改AlertDialog的主题的方法
这个你要去仔细去看SDK里面alertDialog类的方法,以下是一个思路,主要代码如下:
dlg = new AlertDialog.Builder(context).create();
dlg.show();
dlg.getWindow().setContentView(R.layout.alert_style);
LayoutInflater factory = LayoutInflater.from(context);
View view = factory.inflate(R.layout.alert_style, null);
gv = (GridView) view.findViewById(R.id.myGrid);
gv.setAdapter(new ImageAdapter(context, new Integer[] {R.drawable.menu_mark_editor,R.drawable.menu_delete}));
dlg.getWindow().setContentView(gv);
其实原理很简单,就是在弹出框AlertDialog上给他加一个自己的View 我这里使用的是GridView显示的一排图片,效果和UC的差不多!!你也可以使用ListView代替GridView,原理都是一样!
小刚SEO为你解答
如何设置alertdialog的高度是固定的
设定alertdialog的高度和宽度:
LayoutInflater mInflater = (LayoutInflater) getContext()
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View view = mInflater.inflate(R.layout.recordlayout, null);
view.setMinimumHeight(200);
view.setMinimumWidth(500);
LinearLayout layout = (LinearLayout) view
.findViewById(R.id.id_recordlayout);
如何设置alertdialog,button enable 和 disable
基本的命令就是将“确定”这个button设置为disable(false).如下的方法,就是构造一个自定义的dialog,其中包括一个编辑栏(EditText)和两个按钮(确定和取消)如果想要当EditText为空的时候让确定按钮为不可点击状态 你可能会如下实现(但是这个里面有问题!!!)。public Dialog customDialog(Context dialogContext){ final AlertDialog.Builder builder = new AlertDialog.Builder(dialogContext); builder.setView(editText); //将一个EditText放入dialog builder.setTitle(R.string.fastdialer_add_number_title); //设置dialog的Title builder.setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { //点击确定后干点什么...... } }); //希望拿到“确定”按钮。初始化确定按钮 final Button positiveButton = ((AlertDialog)dialog).getButton(AlertDialog.BUTTON_POSITIVE); if(edittext.getText().toString.equal("")) //初次进来为空的时候,就设置按钮为不可点击 positiveButton.setEnabled(false); editText.addTextChangedListener(//设置编辑栏的文字输入监听 new TextWatcher(){ @Override public void afterTextChanged(Editable arg0) { if(arg0.toString().equals("")){ //当编辑栏为空的时候,将按钮设置为不可点击。