生活随笔
收集整理的這篇文章主要介紹了
#在android studio中维护日程管理系统
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1、首先打開日程管理系統,主要看看java包和.xml,熟悉一下代碼要實現具體功能。你可以發現,這個java程序全都放在一個包里,當然,這個是一個小的程序,java程序還不算太多。要是可以更加的規范,把實現不能功能的java程序分別打包,那就更好了。
2、然后找到程序的入口,在AndroidManifest中有很多你建的activity,其中有個特殊的就是intent-filer這個就是表示你這個程序的入口,那么我們這個工程的入口就是
WelcomeActivity,接下來我們就去看WelcomeActivity
3、查看歡迎界面的xml和WelcomeActivity,找出是否有錯誤
、、、
package com.example.tasks;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import com.avos.avoscloud.AVUser;//第三方云庫
public class WelcomeActivity extends Activity {
Handler handler = new Handler();
//調轉到登錄界面
Runnable runnable = new Runnable() {
public void run() {Intent intent = new Intent(WelcomeActivity.this, LoginActivity.class);startActivity(intent);finish();}};
//調轉到主界面
Runnable runnable1 = new Runnable() {public void run() {Intent intent = new Intent(WelcomeActivity.this, MainActivity.class);startActivity(intent);finish();}};@Override
protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_welcome);AVUser currentUser = AVUser.getCurrentUser();//加載第三方云庫handler.postDelayed(runnable,2000);//閃頻維持二十秒再次跳轉至登錄界面//以下的是錯誤的地方的修改,之前沒有這段代碼,所以歡迎界面顯示不出來if (currentUser != null) {// 跳轉到首頁,handler.postDelayed(runnable1, 2000);} else {//緩存用戶對象為空時,可打開用戶注冊界面…handler.postDelayed(runnable, 2000);}}
}
、、、
4、現在閱讀注冊界面java代碼** RegistActivity**
、、、
public class RegistActivity extends Activity {
EditText RegistName;
EditText RegistPwd;
EditText RegistPwd2;
Button Regist;
String RName;
String RPwd;
String RPwd2;
String regist;
@Override
protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_regist);RegistName = (EditText) findViewById(R.id.RegistName);RegistPwd = (EditText) findViewById(R.id.RegistPwd);RegistPwd2 = (EditText) findViewById(R.id.RegistPwd2);Regist = (Button) findViewById(R.id.Regist);// 修改狀態欄顏色,4.4+生效if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {setTranslucentStatus();}SystemBarTintManager tintManager = new SystemBarTintManager(this);tintManager.setStatusBarTintEnabled(true);tintManager.setStatusBarTintResource(R.drawable.iphone);//通知欄所需顏色Regist.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubRName = RegistName.getText().toString();RPwd = RegistPwd.getText().toString();RPwd2 = RegistPwd2.getText().toString();//這個if少了個異常處理的,如果都為空,報錯if (!"".equals(RName) && !"".equals(RPwd) && !"".equals(RPwd2)) {if (!RPwd.equals(RPwd2)) {Toast.makeText(RegistActivity.this, "兩次輸入的密碼不一致", Toast.LENGTH_LONG).show();} else {AVUser user = new AVUser();// 新建 AVUser 對象實例user.setUsername(RName);// 設置用戶名user.setPassword(RPwd);// 設置密碼user.signUpInBackground(new SignUpCallback() {@Overridepublic void done(AVException e) {if (e == null) {// 注冊成功Toast.makeText(RegistActivity.this, "注冊成功", Toast.LENGTH_LONG).show();Handler handler = new Handler();Runnable runnable = new Runnable() {@Overridepublic void run() {// TODO Auto-generated method stubIntent intent = new Intent(RegistActivity.this, LoginActivity.class);startActivity(intent);finish();}};handler.postDelayed(runnable, 2000);} else {// 失敗的原因可能有多種,常見的是用戶名已經存在。Toast.makeText(RegistActivity.this, "用戶名已存在", Toast.LENGTH_LONG).show();}}});}}else {//加個報錯的ToastToast.makeText(RegistActivity.this, "賬號密碼不能為空", Toast.LENGTH_LONG).show();}}});}private void setTranslucentStatus() {Window window = this.getWindow();// Translucent status barwindow.setFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS,WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
}
}
修改完運行結果如下
、、、
5、用戶注冊完之后,數據庫里就有了用戶的賬號,然后點擊登錄,以下是修改的代碼
、、、
public class LoginActivity extends Activity {
TextView LoginName;
TextView LoginPwd;
Button Login;
TextView Regist1;
String LN;
String LP;
@Override
protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_login);LoginName=(TextView) findViewById(R.id.LoginName);LoginPwd=(TextView) findViewById(R.id.LoginPwd);Login=(Button) findViewById(R.id.Login);Regist1=(TextView) findViewById(R.id.Regist1);// 修改狀態欄顏色,4.4+生效if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {setTranslucentStatus();}SystemBarTintManager tintManager = new SystemBarTintManager(this);tintManager.setStatusBarTintEnabled(true);tintManager.setStatusBarTintResource(R.drawable.iphone);//通知欄所需顏色Login.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubLN=LoginName.getText().toString();LP=LoginPwd.getText().toString();//云數據庫,使用此類AVUser.logInInBackground(LN, LP, new LogInCallback<AVUser>() {@Overridepublic void done(AVUser avUser, AVException e) {//判斷是否為空,此處錯誤,只有if語句,缺少else語句,做出個Toastif (avUser!=null) {Intent intent=new Intent(LoginActivity.this, MainActivity.class);startActivity(intent);finish();}else{Toast.makeText(LoginActivity.this, "賬號密碼不能為空", Toast.LENGTH_LONG).show();}}});}});Regist1.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubIntent intent=new Intent(LoginActivity.this,RegistActivity.class);startActivity(intent);}});
}private void setTranslucentStatus() {Window window = this.getWindow();// Translucent status barwindow.setFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS,WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
}
}
、、、
以下是修改過之后的運行結果
轉載于:https://www.cnblogs.com/zjh55/p/6638517.html
總結
以上是生活随笔為你收集整理的#在android studio中维护日程管理系统的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。