你的分享就是我们的动力 ---﹥

Android精美登录界面设计

时间:2013-08-20 09:19来源:www.chengxuyuans.com 点击:

在网上在到一个登录界面感觉挺不错的,给大家分享一下~先看效果图:


这个Demo除了按钮、小猫和Logo是图片素材之外,其余的UI都是通过代码实现的。

?

一、背景

背景蓝色渐变,是通过一个xml文件来设置的。代码如下:

background_login.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:andro>
	<gradient 
		android:startColor="#FFACDAE5"
		android:endColor="#FF72CAE1"
		android:angle="45"
	/>
</shape>


startColor是渐变开始的颜色值,endColor是渐变结束的颜色值,angle是渐变的角度。其中#FFACDAE5中,FF是Alpha值,AC是RGB的R值,DA是RGB的G值,E5是RGB的B值,每个值在00~FF取值,即透明度、红、绿、蓝有0~255的分值,像要设置具体的颜色,可以在PS上的取色器上查看设置。

?

?

二、圆角白框

效果图上面的并不是白框,其实框是白色的,只是设置了透明值,也是靠一个xml文件实现的。

background_login_div.xml

<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:andro>
	<solid android:color="#55FFFFFF" />
	<!-- 设置圆角
	注意:	bottomRightRadius是左下角而不是右下角  bottomLeftRadius右下角-->
	<corners android:topLeftRadius="10dp" android:topRightRadius="10dp"
		android:bottomRightRadius="10dp" android:bottomLeftRadius="10dp"/>
</shape>

?

三、界面的布局

界面的布局挺简单的,就直接贴代码啦~

login.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:andro
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@drawable/background_login">
    <!-- padding 内边距   layout_margin 外边距
  		android:layout_alignParentTop 布局的位置是否处于顶部 -->
  		
  	<RelativeLayout 
  	    android:
  	    android:layout_width="fill_parent"
  		android:layout_height="wrap_content"
  		android:padding="15dip"        
	  	android:layout_margin="15dip" 
	  	android:background="@drawable/background_login_div_bg" >
  		<!-- 账号 -->
	  	<TextView 
	  		android:
	  		android:layout_width="wrap_content"
	  		android:layout_height="wrap_content"
	  		android:layout_alignParentTop="true"
	  		android:layout_marginTop="5dp"
	  		android:text="@string/login_label_username"
	  		/>
	  	<EditText 
	  		android:
	  		android:layout_width="fill_parent"
	  		android:layout_height="wrap_content"
	  		android:hint="@string/login_username_hint"
	  		android:layout_below="@id/login_user_input"
	  		android:singleLine="true"
	  		android:inputType="text"/>
	    <!-- 密码 text -->
	    <TextView 
	    	android:
	    	android:layout_width="wrap_content"
	    	android:layout_height="wrap_content"
	    	android:layout_below="@id/username_edit"
	    	android:layout_marginTop="3dp"
	    	android:text="@string/login_label_password"
	    	/>
	    <EditText 
	    	android:
	    	android:layout_width="fill_parent"
	    	android:layout_height="wrap_content"
	    	android:layout_below="@id/login_password_input"
	    	android:password="true"
	    	android:singleLine="true"
	    	android:inputType="textPassword" />
	    <!-- 登录button -->
	    <Button 
	    	android:
	    	android:layout_width="wrap_content"
	    	android:layout_height="wrap_content"
	    	android:layout_below="@id/password_edit"
	    	android:layout_alignRight="@id/password_edit"
	    	android:text="@string/login_label_signin"
	    	android:background="@drawable/blue_button" />
  	</RelativeLayout>
  
  	<RelativeLayout 
      	android:layout_width="fill_parent"
      	android:layout_height="wrap_content" >
		 <TextView  android:
		     android:text="@string/login_register_link"
		     android:layout_width="wrap_content"
		     android:layout_height="wrap_content"
		     android:layout_marginLeft="15dp"
		     android:textColor="#888"
		     android:textColorLink="#FF0066CC" />
		<ImageView android:
		    android:src="@drawable/cat"
		    android:layout_width="wrap_content"
		    android:layout_height="wrap_content"
		    android:layout_alignParentRight="true"
		    android:layout_alignParentBottom="true"
		    android:layout_marginRight="25dp"
		    android:layout_marginLeft="10dp"
		    android:layout_marginBottom="25dp" />
		<ImageView android:src="@drawable/logo"
			android:layout_width="wrap_content"
			android:layout_height="wrap_content"
			android:layout_toLeftOf="@id/miniTwitter_logo"
			android:layout_alignBottom="@id/miniTwitter_logo"
			android:paddingBottom="8dp"/>
  	</RelativeLayout>
</LinearLayout>

?

四、Java源文件

Java源文件比较简单,只是实例化Activity,去掉标题栏。

package com.mytwitter.acitivity;

import android.app.Activity;
import android.os.Bundle;
import android.view.Window;

public class LoginActivity extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.login);
    }
}


在开发APP的时候,需要设计登录界面的可以以此作为参考哦!

转载注明地址:http://www.chengxuyuans.com/Android/66548.html