登录界面android_android studio kotlin登陆界面注册界面 - CSDN
  • 安卓简单登陆界面

    2018-09-25 21:48:11
    安卓登陆界面 前言:今天博主应老师要求做一个简单的安卓登陆界面,因为我学习安卓不久,此次制作也是花了不少时间,至此记录一下,本人菜鸟,还望有什么做得不好的地方请大家指教! 首先我们先来看一下最终的效果 ...

    安卓登陆界面

    前言:今天博主应老师要求做一个简单的安卓登陆界面,因为我学习安卓不久,此次制作也是花了不少时间,至此记录一下,本人菜鸟,还望有什么做得不好的地方请大家指教!

    1. 首先我们先来看一下最终的效果
      功能:能够对用户的登录按钮做出一个简单的吐司反应,并且能够光标定位到具体的输入框

    2. 因为这个只是纯界面,并没有连接到数据库,所以设计到的知识量很少,基本上只涉及到布局的XML文件和一些简单的java知识。

    3. 首先我来说一下我的思路:基本上采用的都是线性布局
      给大家看一下我的布局结构
      在这里插入图片描述
      可以看到我在一个线性布局里面嵌套了五个线性布局

    然后我给大家上代码activity_main.xml文件的代码

    
    
    <?xml version="1.0" encoding="utf-8"?>

    <!--线性布局1-->
    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">
        <ImageView
            android:layout_width="200dp"
            android:layout_height="80dp"
            android:src="@mipmap/login"
            android:layout_marginBottom="40dp"
            />
    </LinearLayout>
    
    <!--线性布局2-->
    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textSize="20sp"
            android:layout_marginRight="40dp"
            android:text="账号"
            />
        <EditText
            android:layout_width="200dp"
            android:layout_height="40dp"
            android:layout_marginRight="20dp"
            android:hint="请输入账号" />
    </LinearLayout>
    
    <!--线性布局3-->
    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textSize="20sp"
            android:layout_marginRight="40dp"
            android:text="密码"
            />
        <EditText
            android:layout_width="200dp"
            android:layout_height="40dp"
            android:layout_marginRight="20dp"
            android:hint="请输入密码" />
    </LinearLayout>
    
    <!--线性布局4-->
    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">
        <Button
            android:layout_marginTop="15dp"
            android:layout_marginRight="15dp"
            android:layout_width="280dp"
            android:layout_height="50dp"
            android:background="@color/colorAccent"
            android:text="登陆"
            android:textColor="@color/white"
            android:textSize="20sp"
            android:textStyle="bold"
            />
    </LinearLayout>
    
    <!--线性布局5-->
    <LinearLayout
        android:layout_marginTop="10dp"
        android:layout_marginRight="7dp"
        android:layout_width="280dp"
        android:layout_height="wrap_content">
        <RadioButton
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/RememberPasswd"
            />
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="帮助"
            android:layout_marginLeft="160dp"
            />
    </LinearLayout>
    

    里面涉及的知识量很少,基本上就是文本,按钮,图片三个布局
    至此一个简单的安卓登陆界面就完成了,里面涉及到的图片我是从阿里巴巴矢量图标库里面寻找的,大家可以去看看,点击下载图标

    好了,现在来看一下我们的java文件里面的代码
    第一步:实例化组件

     		mEditTextUserName = findViewById(R.id.userName);
            mEditTextPasswd = findViewById(R.id.userPasswd);
            mButtonLogin = findViewById(R.id.login);
    

    设置监听事件

     	   mButtonLogin.setOnClickListener( v -> {
                userName = mEditTextUserName.getText().toString().trim();
                userPasswd = mEditTextPasswd.getText().toString().trim();
                String info = checkAccount(userName,userPasswd);
                Toast.makeText(MainActivity.this, info, Toast.LENGTH_SHORT).show();
            });
    
    

    使用HashMap模拟数据库

    	    account.put("zhangsan","123");
            account.put("lisi","1234");
            account.put("wangwu","123");
            account.put("zhaoliu","321");
            account.put("huangqi","123");
    

    检查用户存在与否

    //检验用户是否存在
        private String checkAccount(String userName, String userPasswd){
            String loginInfo = "";
            String tempUserPasswd = account.get(userName);
            if(tempUserPasswd!= null && tempUserPasswd.equals(userPasswd)){
                loginInfo = "恭喜登录成功";
            }else if(tempUserPasswd == null){
                loginInfo = "用户名不存在";
                mEditTextUserName.requestFocus();
            }else if(!tempUserPasswd.equals(userPasswd)){
                loginInfo = "密码错误";
                mEditTextPasswd.requestFocus();
            }
            return loginInfo;
        }
    
    展开全文
  • ##使用Android Studio 编写的第一个demo,使用布局文件—xml实现用户登录界面 Step1:Android Studio 开发环境的搭建: 1.安装JDK (1.8); 2.安装Android studio (3.3.1) 包含 gradle、sdk manage 、avd manage ...

    使用Android Studio 编写的第一个demo,使用布局文件—xml实现用户登录界面

    注:所建工程均为Android 6.0  所以只要是Android 6.0(包括6.0)以上的真机,模拟机都可以使用

    Step1:Android Studio 开发环境的搭建:

    1.安装JDK (1.8);
    2.安装Android studio (3.3.1) 包含 gradle、sdk manage 、avd manage ;
    3.使用sdk manage 下载安装 sdk;
    4.使用avd manages 创建虚拟机

    Step2: 新建工程项目Myapp2.0

    在这里插入图片描述

    LoginDemo

    1.在res/layout/activity_main.xml中编写布局内容:

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        android:paddingLeft="55px"
        android:paddingRight="50px"
        tools:context=".MainActivity">
        <TextView
            android:id="@+id/message"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginStart="@dimen/activity_horizontal_margin"
            android:layout_marginLeft="@dimen/activity_horizontal_margin"
            android:layout_marginTop="@dimen/activity_vertical_margin"
            android:text="Hello Word!"
            app:layout_constraintLeft_toLeftOf="parent"
            app:layout_constraintTop_toTopOf="parent" />
        <View
            android:layout_width="match_parent"
            android:layout_height="2px"
            android:layout_marginTop="16px"
            android:background="#000000" />
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textSize="28dp"
            android:layout_gravity="center_horizontal"
            android:layout_marginTop="20px"
            android:text="登陆界面" />
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        >
        <EditText
            android:id="@+id/et1"
            android:layout_width="280dp"
            android:layout_height="wrap_content"
            android:layout_marginTop="30dp"
            android:paddingLeft="10dp"
            android:hint="请输入账号"
            android:inputType="text"/>
        <ImageView
            android:id="@+id/bt1"
            android:layout_width="25dp"
            android:layout_height="25dp"
            android:layout_marginTop="37dp"
            android:src="@drawable/delete" />
    </LinearLayout>
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal"
            android:paddingLeft="8px">
        <EditText
            android:id="@+id/et2"
            android:layout_width="280dp"
            android:layout_height="wrap_content"
            android:layout_marginTop="26dp"
            android:hint="请输入密码"
            android:inputType="textPassword" />
            <ImageView
                android:id="@+id/bt2"
                android:layout_width="25dp"
                android:layout_height="25dp"
                android:layout_marginTop="33dp"
                android:src="@drawable/delete" />
    </LinearLayout>
            <Button
                android:id="@+id/btn_login"
                android:layout_width="match_parent"
                android:layout_height="48dp"
                android:background="@color/bbutton_danger_disabled_edge"
                android:layout_marginTop="30dp"
                android:text="登  陆"
                android:textSize="30dp"
                android:textColor="@color/bbutton_danger"/>
        <Button
        android:id="@+id/bbt1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="15dp"
        android:layout_gravity="right"
        android:layout_marginTop="20px"
        android:background="@color/bbutton_danger"
        android:text="Adapter" />
        </LinearLayout> 
    

    2.创建一个Java class —ExitTextUtils用于封装清空输入框的内容 :

    /**
     * 用于实现点击叉叉时  ,  清空输入框的内容
     */
    
     class EditTextUtils {
    
        public static void clearButtonListener(final EditText et, final View view) {
    
            // 取得et中的文字
    
            String etInputString = et.getText().toString();
    
            // 根据et中是否有文字进行X可见或不可见的判断
    
            if (TextUtils.isEmpty(etInputString)) {
    
                view.setVisibility(View.INVISIBLE);
            } else {
    
                view.setVisibility(View.VISIBLE);
            }
    
            //点击X时使et中的内容为空
    
            view.setOnClickListener(new View.OnClickListener() {
    
                @Override
                public void onClick(View view) {
                    et.setText("");
                    et.requestFocusFromTouch();
                }
            });
            //对et的输入状态进行监听
            et.addTextChangedListener(new TextWatcher() {
                @Override
                public void onTextChanged(CharSequence s, int start, int before, int count) {
                }
                @Override
                public void beforeTextChanged(CharSequence s, int start, int count, int after) {
                }
                @Override
                public void afterTextChanged(Editable s) {
    
                    if (s.length() == 0) {
                        view.setVisibility(View.INVISIBLE);
                    } else {
                        view.setVisibility(View.VISIBLE);
                    }
                }
            });
        }
    }
    

    3.在MainActivity.java 里书写代码:

    private TextView mTextMessage;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        EditText et1 = (EditText) findViewById(R.id.et1);
        EditText et2 = (EditText) findViewById(R.id.et2);
        View bt = findViewById(R.id.bt1);
        View iv = findViewById(R.id.bt2);
        EditTextUtils.clearButtonListener(et1, bt);
        EditTextUtils.clearButtonListener(et2, iv);
    
        Button btn1 = (Button) findViewById(R.id.bbt1);
        btn1.setOnClickListener(new View.OnClickListener(){
            @Override
            public void onClick(View v){
                //Intent是一种运行时绑定(run-time binding)机制,它能在程序运行过程中连接两个不同的组件,在存放资源代码的文件夹下下,
                Intent i = new Intent(MainActivity.this , Main2ActivityAdapterDemo.class);
                //启动
                startActivity(i);
                }
        });
    
        mTextMessage = (TextView) findViewById(R.id.message);
        BottomNavigationView navigation = (BottomNavigationView) findViewById(R.id.navigation);
        navigation.setOnNavigationItemSelectedListener(mOnNavigationItemSelectedListener);
    }
    

    4.布局使用到的资源:

    自己建的用于存放自定义的文件 dimens.xml

    <resources>
        <!-- Default screen margins, per the Android Design guidelines. -->
        <dimen name="activity_horizontal_margin">16dp</dimen>
        <dimen name="activity_vertical_margin">16dp</dimen>
        <dimen name="text_size_16">22dp</dimen>
        <dimen name="space_8">8</dimen>
        <dimen name="space_16">16</dimen>
        <dimen name="fab_margin">16dp</dimen>
    </resources>
    

    color.xml

    <?xml version="1.0" encoding="utf-8"?>
    <resources>
        <color name="colorPrimary">#008577</color>
        <color name="colorPrimaryDark">#00574B</color>
        <color name="colorAccent">#D81B60</color>
        <color name="main_gray">#CCCCCC</color>
        <color name="main_black">#000000</color>
        <color name="bbutton_danger_disabled_edge">#00CC33</color>
        <color name="bbutton_danger">#FFFFFF</color>
    </resources>
    
    

    截图

    Step3:运行程序。。。截图如下:

    在这里插入图片描述

    **

    下载地址:[LoginDemo.zip]

    **(https://download.csdn.net/download/wendy__xu/11189669)

    展开全文
  • 登录QQ的时候,我们会看到在登录界面的背景不是静态的,而是一段动画效果,刚开始觉得蛮好奇的,现在我们也来实现一下这种效果,实现起来还是挺简单的。 实现步骤: 1、自定义CustomVideoView类继承VideoView 2、...

    登录QQ的时候,我们会看到在登录界面的背景不是静态的,而是一段动画效果,刚开始觉得蛮好奇的,现在我们也来实现一下这种效果,实现起来还是挺简单的。

    实现步骤:
    1、自定义CustomVideoView类继承VideoView
    2、实现xml布局文件
    3、将视频文件放入raw目录
    4、代码实现动画效果
    5、静态效果图展示

    实现过程:

    1、自定义CustomVideoView类继承VideoView

    package com.showly.bmobdemo.utils;
    
    import android.content.Context;
    import android.media.MediaPlayer;
    import android.util.AttributeSet;
    import android.view.KeyEvent;
    import android.widget.VideoView;
    
    /**
     * Created by Administrator
     */
    
    public class CustomVideoView extends VideoView {
    
    
        public CustomVideoView(Context context) {
            super(context);
        }
    
        public CustomVideoView(Context context, AttributeSet attrs) {
            super(context, attrs);
        }
    
        public CustomVideoView(Context context, AttributeSet attrs, int defStyle) {
            super(context, attrs, defStyle);
        }
    
        @Override
        protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
            //我们重新计算高度
            int width = getDefaultSize(0, widthMeasureSpec);
            int height = getDefaultSize(0, heightMeasureSpec);
            setMeasuredDimension(width, height);
        }
    
        @Override
        public void setOnPreparedListener(MediaPlayer.OnPreparedListener l) {
            super.setOnPreparedListener(l);
        }
    
        @Override
        public boolean onKeyDown(int keyCode, KeyEvent event) {
            return super.onKeyDown(keyCode, event);
        }
    
    }
    
    

    2、实现xml布局文件

    <com.showly.bmobdemo.utils.CustomVideoView
            android:id="@+id/videoview"
            android:layout_width="match_parent"
            android:layout_height="match_parent" />
    

    3、将视频文件放入raw目录
    在这里插入图片描述

    4、代码实现动画效果

           //找VideoView控件
            customVideoView = (CustomVideoView)findViewById(R.id.videoview);
            //加载视频文件
            customVideoView.setVideoURI(Uri.parse("android.resource://"+getPackageName()+"/"+R.raw.sport));
            //播放
            customVideoView.start();
            //循环播放
            customVideoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
                @Override
                public void onCompletion(MediaPlayer mediaPlayer) {
                    customVideoView.start();
                }
            });
    

    5、静态效果图展示
    注:效果是视频动画,这里只截了一帧
    在这里插入图片描述

    到这里就完成了,源码:公众号回复 “仿QQ登录背景动画效果”


    以下是个人公众号(longxuanzhigu),之后发布的文章会同步到该公众号,方便交流学习Android知识及分享个人爱好文章:
    在这里插入图片描述

    展开全文
  • 登录界面的展示效果大概如此   一、编写activity_main.xml文件。代码如下: &lt;?xml version="1.0" encoding="utf-8"?&gt; &lt;LinearLayout xmlns:android="...

    登录界面的展示效果大概如此

     

    一、编写activity_main.xml文件。代码如下:

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context="com.zhengyuan.httpconnection.MainActivity">
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="vertical"
            android:background="@drawable/background"
            android:gravity="center">
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:paddingBottom="30dp"
                android:paddingTop="20dp"
                android:background="#99404348"
                android:gravity="center">
                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_gravity="center"
                    android:text="Welcome"
                    android:textColor="#FFFFFF"
                    android:textSize="18sp"/>
            </LinearLayout>
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical"
                android:paddingBottom="20dp"
                android:paddingTop="20dp"
                android:background="#99000000">
                <EditText
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:background="@null"
                    android:layout_gravity="center"
                    android:layout_marginRight="50dp"
                    android:layout_marginLeft="50dp"
                    android:textColor="#9F9FA0"
                    android:textColorHint="#9F9FA0"
                    android:hint="your username"/>
    
                <View
                    android:layout_width="match_parent"
                    android:layout_height="1dip"
                    android:background="#83738F"
                    android:layout_marginRight="40dp"
                    android:layout_marginLeft="40dp"
                    android:layout_marginTop="10dp"
                    android:layout_marginBottom="5dp"></View>
    
                <EditText
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:background="@null"
                    android:layout_gravity="center"
                    android:hint="your password"
                    android:textColor="#9F9FA0"
                    android:textColorHint="#9F9FA0"
                    android:layout_marginLeft="50dp"
                    android:layout_marginRight="50dp"/>
            </LinearLayout>
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:paddingBottom="30dp"
                android:paddingTop="20dp"
                android:background="#99404348"
                android:gravity="center"
                android:orientation="horizontal">
                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_gravity="center"
                    android:text="Forget Password?"
                    android:textColor="#DDDDDD"
                    android:textSize="15sp"/>
                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_gravity="center"
                    android:text="Tap Here"
                    android:textColor="#FFFFFF"
                    android:textSize="15sp"/>
            </LinearLayout>
    
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="horizontal">
                <Button
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="40dp"
                    android:layout_marginRight="10dp"
                    android:layout_weight="1"
                    android:background="@drawable/buttonstyle"
                    android:text="Login"/>
                <Button
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginRight="40dp"
                    android:layout_marginLeft="10dp"
                    android:background="@drawable/buttonstyle"
                    android:layout_weight="1"
                    android:text="Sign in"/>
            </LinearLayout>
    
        </LinearLayout>
    
    </LinearLayout>
    

    二、上面这个主布局文件,需要在drawabl文件夹下面添加一个背景图片,和一个button的样式文件。

         1、样式文件 buttonstyle.xml

    <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
        <item android:state_pressed="false">
            <shape>
                <!-- 色值 -->
                <solid android:color="#585EE0" />
                <!-- 圆角 -->
                <corners android:radius="10dp" />
            </shape>
        </item>
        <item android:state_pressed="true">
            <shape>
                <!-- 色值 -->
                <solid android:color="#289BE5" />
                <!-- 圆角 -->
                <corners android:radius="10dp" />
            </shape>
        </item>
    </selector>

        2、背景图片

    三、去掉ActionBar

    AndroidManifest.xml中将theme设置为

    android:theme="@style/Theme.AppCompat.NoActionBar">

    四、在mainActivity.java将头部设置为透明状态

    public class MainActivity extends AppCompatActivity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            //透明状态栏          
            getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
            getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
        }
    
    }

     

    展开全文
  • 小项目框架 今天用QQ的时候想到了...1.登录界面。2.注册界面。3.登陆后的界面。 功能描述 登录按钮------按钮实现跳转到下一个界面,并且判断输入的账号、密码是否符合规则(不为空),提示,登陆成功或失败 注册按...
  • Android登录界面设计

    2017-09-01 13:47:26
    Android登录界面设计 这是之前项目的一个界面,现在抽出来給大家看看。界面:功能:(1)基本的判断,输入的是否为空这里没有判断网络情况,实际项目中是必须要判断的(2)核心知识:sharePreference的使用本地保存...
  • 安卓实战之登录界面设计 运行环境: windows10+ Android Studio2.3.3 +API 21 (适用android 5.0以上版本的手机) (1)知识储备 (知识储备链接:https://blog.csdn.net/biggerchong/article/details/83015407...
  • 安卓系统体系架构思维导图
  • android studio登录界面

    2020-07-30 23:30:10
    android studio 简单的登录界面,模仿QQ登录界面做的。
  • Android开发-登录界面Demo-AndroidStudio 对应博文:http://blog.csdn.net/iwanghang/article/details/78135304
  • 使用android studio设计微信主界面,采用ViewPager和Fragment相结合的方法,实现界面滑动更换页面,点击等
  • 该文件是QQ登录界面的源码,利用Android Studiok编写。
  • 炫酷的android登陆界面

    2020-07-27 23:30:41
    比较炫酷的登陆界面,大家可以放心使用,源码代码都在内。
  • 在2016年底写了一个小项目,登录界面一开始是自己随便写的,基本看得过去,也凑活能用,然后美工看了一眼,默默地回去做了一张登陆的图丢给我,看完美工的图,我对自己的审美产生了怀疑,,, 没有对比就没有伤害...
  • 最新版QQ登陆界面如下:代码实现效果如下:activity_main.xml代码如下:&lt;?xml version="1.0" encoding="utf-8"?&gt; &lt;android.support.constraint.ConstraintLayout xmlns:...
  • Android登录界面

    2020-07-26 23:32:36
    用于Android端的登录界面,添加了登录效果,可以下载试试,萌萌哒的登录界面,你值得拥有
  • Android非常漂亮好看的登陆,注册界面!做有逼格的程序员,不要重复的造轮子!
  • Android开发经常用到注册、登录功能,于是便整理出一般通用的登录界面,并实现其相应功能。供读者参阅。此项目包含三个活动,即登录,注册界面,找回密码。 首先是登录界面 activity_main.xml: &lt;?...
  • 仿QQ登录界面

    2020-07-30 23:31:48
    这是一个简单的仿照QQ的登录界面,没有连接后台,属于入门级别!
  • .xml 文件代码如下: <?xml version="1.0" encoding="utf-8"?> <TableLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_... android:layout_height="...
1 2 3 4 5 ... 20
收藏数 54,578
精华内容 21,831
关键字:

登录界面android