Android studio 学习2:实现密码登录界面和验证码登录界面的切换(在同一xml页面)

Android studio :实现密码登录界面和验证码登录界面的切换(不用新建xml页面)
一、了解Xml设置隐藏属性

android:visibility=" "
Visible:正常显示
Invisible:保留位置
Gone:完全隐藏

二、实现图示

Android studio 学习2:实现密码登录界面和验证码登录界面的切换(在同一xml页面)_第1张图片
Android studio 学习2:实现密码登录界面和验证码登录界面的切换(在同一xml页面)_第2张图片
三、代码实现

Xml主要代码如下:

    
        

        
        
    
    
        
        
    

Java代码的实现:
public class LoginActivity extends AppCompatActivity {

//控件
private Button btnSubmit;
private LinearLayout llSms;
private LinearLayout llPassword;
private TextView tvSms;
private TextView tvPassword;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate( savedInstanceState );
    //设置布局
    setContentView( R.layout.activity_login );
    //获取控件 Ctrl+alt+F
    btnSubmit = findViewById( R.id.btn_login_submit );
    llSms = findViewById( R.id.ll_login_sms );
    llPassword = findViewById( R.id.ll_login_password );
    tvSms = findViewById( R.id.tv_login_sms );
    tvPassword = findViewById( R.id.tv_login_password );

    //设置控件的事件
    setViewListener();

}

/**
 * 设置控件的事件
 */

private void setViewListener() {

    //文本—按钮 密码的登录 点击事件
    tvPassword.setOnClickListener( new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            //显示密码登录输入框
            llPassword.setVisibility( View.VISIBLE );
            //显示文本—按钮 短信验证码登录
            tvSms.setVisibility( View.VISIBLE );
            //隐藏短信验证码输入框
            llSms.setVisibility( View.GONE );
            //隐藏文本—按钮 密码的登录
            tvPassword.setVisibility( View.GONE );
        }
    } );

    //文本—按钮 短信验证码登录 点击事件
    tvSms.setOnClickListener( new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            llPassword.setVisibility( View.GONE );
            tvSms.setVisibility( View.GONE );
            llSms.setVisibility( View.VISIBLE );
            tvPassword.setVisibility( View.VISIBLE );
        }
    } );
    
       }

}

延伸:实现两个xml界面跳转的方法
java代码

tvRegister.setOnClickListener( new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(LoginActivity.this,RegisterActivity.class);
startActivity( intent );
**
}
} );

你可能感兴趣的:(Android,studio)