Android实现弹出登陆框的方案
程序员文章站
2022-06-04 12:16:25
下面是我的实现经历:
1.首先,我是直接使用alertdialog来实现,确定是,形状有点难看,而且获得dialog里面的控件略显麻烦(因为我要做的登陆框有一定的布局),...
下面是我的实现经历:
1.首先,我是直接使用alertdialog来实现,确定是,形状有点难看,而且获得dialog里面的控件略显麻烦(因为我要做的登陆框有一定的布局),然后就给我就放弃了,可能因为我太水了,不能很好的使用它
2.然后我就使用popupwindow来实现,界面是达到了我的要求,控件的获得通过inflater就可以获得了相对较简单,但是有一个缺点就是,当点击输入的时候,对话框不会根据软键盘的位置而改变位置,网上搜了搜,还不能直接监听软键盘的出现和消失的事件消息,挣扎了一个下午,果断放弃。
3.最后直接就使用activity来实现了,界面达到了要求,控件获取也容易,还能根据软键盘而改变位置,集体实现如下:
第一,创建activity,并布置好相应的布局。
第二,个人觉得是最重要的一部,就是注册activity的时候,设定好activity的theme属性为dialog,要自定义自己的style文件,这样activity的显示才会按照自己的要求实现,具体代码如下:
<activity android:name="com.zsxy.schedule.login" android:theme="@style/login_dialog" > </activity>
其中login_dialog文件如下:
<style name="login_dialog" parent="@android:style/theme.dialog"> <item name="android:colorbackgroundcachehint">@null</item> <item name="android:windowframe">@null</item> <item name="android:windowisfloating">true</item> <item name="android:windowistranslucent">true</item> <item name="android:windownotitle">true</item> <item name="android:windowbackground">@android:color/transparent</item> <item name="android:backgrounddimenabled">false</item> </style>
3.最后想调用其他activity那样调用就行了
推荐阅读
-
浅析Android Service中实现弹出对话框的坑
-
Android实现底部对话框BottomDialog弹出实例代码
-
Bootstrap的popover(弹出框)2秒后定时消失的实现代码
-
Android之用PopupWindow实现弹出菜单的方法详解
-
Android中使用AlertDialog实现几种不同的对话框
-
Android使用popUpWindow带遮罩层的弹出框
-
Android实现简单的popupwindow提示框
-
Android实现弹出输入法时顶部固定中间部分上移的效果
-
Android使用AlertDialog实现的信息列表单选、多选对话框功能
-
Android应用内悬浮窗的实现方案示例