博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android开发我的新浪微博客户端-用户授权页面UI篇(3.1)
阅读量:6403 次
发布时间:2019-06-23

本文共 3016 字,大约阅读时间需要 10 分钟。

 

 看上面的图,其实这个页面的UI实现不复杂,首先是背景部分的实现这个参考,重点来讲讲这个半透明的弹出对话框窗口是如何实现的,首先新建名为AuthorizeActivity.java的Activity,并且在AndroidManifest.xml文件中添加这个Activity,这样这个Activity才能被使用,接下来为这个Activity新建名为authorize.xml的Layout,这个Layout很简单只负责logo小图标显示,背景部分和透明窗口都是有代码来实现,所以非常简单参考

       完成Layout建立后在AuthorizeActivity的onCreate方法添加如下代码,设置authorize.xml为AuthorizeActivity的页面Layout:

 

 

@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.authorize); ....... }

接下来是本文的重点部分,半透明弹窗用Dialog控件进行实现,首先为这个半透明弹窗新建一个名为dialog.xml的Layout,这个Layout主要是对4个元素进行布局,如图所示分别为i小图标信息提示中间文字开始按钮,首先用LinearLayout对i小图标信息提示进行水平布局,中间文字以一个TextView跟在下面,对于开始按钮是用RelativeLayout进行底部对齐显示。具体代码如下:

 

 

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical" android:padding="10dip"> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/info_icon"> </ImageView> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="信息提示" android:textSize="13px" android:textColor="#219ac6" android:layout_marginLeft="5dip"> </TextView> </LinearLayout> <TextView android:id="@+id/text_info" android:layout_marginTop="6px" android:layout_width="200px" android:layout_height="wrap_content" android:textColor="#686767" android:textSize="14px" android:text="第一次使用需要输入您的新浪微博账号和密码进行登录授权"> </TextView> <RelativeLayout android:layout_width="fill_parent" android:layout_height="40px"> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal" android:layout_centerHorizontal="true" android:layout_alignParentBottom="true"> <ImageButton android:id="@+id/btn_start" android:layout_width="80px" android:layout_height="31px" android:src="@drawable/btn_start_selector"> </ImageButton> <ImageButton android:id="@+id/btn_cancel" android:layout_width="80px" android:layout_height="31px" android:layout_marginLeft="8px" android:src="@drawable/btn_cancel_selector"> </ImageButton> </LinearLayout> </RelativeLayout> </LinearLayout>

 

这个样式文件的说明如下

parent="@android:style/Theme.Dialog" :在系统Dialog样式基础上,相当于继承系统样式

<item name="android:windowFrame">@null</item> :Dialog的windowFrame框为无

<item name="android:windowIsFloating">true</item>:是否浮现在activity之上

<item name="android:windowIsTranslucent">false</item>:
是否
半透明
<item name="android:windowNoTitle">true</item>:是否显示title
<item name="android:windowBackground">@drawable/dia_bg</item>:设置dialog的背景

<item name="android:backgroundDimEnabled">false</item>: 背景是否模糊显示

     接下来写java代码把这个半透明弹窗显示出来,在AuthorizeActivity的onCreate方法添加如下代码:

...... View diaView=View.inflate(this, R.layout.dialog, null); dialog=new Dialog(AuthorizeActivity.this,R.style.dialog); dialog.setContentView(diaView); dialog.show(); ......

转载地址:http://nnnea.baihongyu.com/

你可能感兴趣的文章
LOAD DATA INFILE
查看>>
QListWidget中右键单击Item出现菜单
查看>>
国内跨云端平台应用的大数据平台供应商,基于Hadoop的互联网大数据平台解决方案,武汉数道云...
查看>>
Solr查询详解
查看>>
java架构师高手必备的十种能力,全部掌握轻轻松松月入5万+
查看>>
小内存使用Docker部署多个应用实录
查看>>
shell习题-清理日志
查看>>
OpenGL OPenVG Freetype
查看>>
liunx定时执行php脚本
查看>>
OSPF MPLS动态流量工程和BGP4
查看>>
如何 Scale Up/Down 应用?- 每天5分钟玩转 Docker 容器技术(126)
查看>>
ubuntu下安装最新版的nodejs方法
查看>>
位运算操作
查看>>
如何在戴尔M系列交换机上配置简单交换模式
查看>>
日常工作小结(十)
查看>>
python核心编程--第九章
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
【N版】openstack——基础环境准备(二)
查看>>
6月23日总结
查看>>