Dialog的一些使用笔记
我在要显示的Activity里创建了一个按钮,点击按钮,就会弹出一个Dialog
1、首先要创建一个自定义的Dialog类
public class ChoseDialog extends Dialog {
public ChoseDialog(Context context) {
super(context);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.layout_chose_dialog);
}
}
这里面,只是把一个布局文件关联到了Dialog里
2、在主界面实例化
ChoseDialog choseDialog = new ChoseDialog(this);
choseDialog.show();
3、开始配置(一定要先执行show,不然部分设置不会生效,比方说dialog的大小)
我这里就设置几个简单的属性,如果之后有一些新的心得,我会持续更新
注意代码是连续的
*设置dialog出现位置
getWindow()表示用来得到Dialog的窗口,这是一个抽象概念
setGravity()用来设置出现位置,BOTTOM只是其中一个,相对的还有TOP等等
Window window = choseDialog.getWindow();
window.setGravity(Gravity.BOTTOM);
*接下来设置Dialog大小
思路是这样的:
1、先拿到主activity的windows大小保存在一个个Point变量里(getHeight等函数被淘汰了)
2、这里的window就是之前拿到的dialog的窗口,然后提出windows的属性
3、然后就是编辑属性
4、最后一步,设置属性
Point size = new Point();
getWindowManager().getDefaultDisplay().getSize(size);
WindowManager.LayoutParams layoutParams = window.getAttributes();
layoutParams.height = (int) (size.y*0.6);
layoutParams.width = (int) (size.x*0.8);
window.setAttributes(layoutParams);
好了 就这么简单,先写到这里