版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
【移動(dòng)應(yīng)用開(kāi)發(fā)技術(shù)】Android如何實(shí)現(xiàn)機(jī)房座位預(yù)約系統(tǒng)
這篇文章主要介紹Android如何實(shí)現(xiàn)機(jī)房座位預(yù)約系統(tǒng),文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!具體內(nèi)容如下
這周要去武漢開(kāi)會(huì),下周項(xiàng)目就得用上,所以,比較緊。加上導(dǎo)師不懂Android開(kāi)發(fā),只要開(kāi)會(huì)就改需求,/(ㄒoㄒ)/~~反正他說(shuō)先讓學(xué)校用著,移動(dòng)端和服務(wù)器的開(kāi)發(fā)就給了兩周時(shí)間。所以功能實(shí)現(xiàn)的比較簡(jiǎn)單,但代碼做的比較容易擴(kuò)展,都留了接口,后面更新起來(lái)也好做一些。通過(guò)這個(gè)工程,對(duì)Struts2的攔截器有了一些新體會(huì)。隨著項(xiàng)目變大代碼量變多,自然而然就會(huì)想起用一些設(shè)計(jì)模式了。不然代碼根本沒(méi)辦法看。整體是4個(gè)fragment,每個(gè)fragment里都有課程表的布局,課程可以從服務(wù)器傳過(guò)來(lái)動(dòng)態(tài)生成。其實(shí)很多都可以復(fù)用的布局,為了代碼結(jié)構(gòu)清晰,都分開(kāi)寫(xiě)了。不然需要加控制器,調(diào)試起來(lái)心累。寫(xiě)的不好,還請(qǐng)大家多指教。做的還不完善,弄完以后再傳上來(lái)。Application里對(duì)數(shù)據(jù)進(jìn)行持久化,這么做發(fā)現(xiàn)程序變得比較容易控制了。Applicationpackage
com.example.myapplication;
import
android.app.Application;
import
android.content.SharedPreferences;
import
android.content.SharedPreferences.Editor;
public
class
CustomApplication
extends
Application
{
public
static
final
String
serverAddress
=
"19";
//
public
static
final
String
serverAddress
=
"3";
public
static
final
String
serverPort
=
"8080/Person_proj/upload";
//
public
static
final
String
serverPort
=
"8000";
private
static
final
String
DEFAULT_NAME
=
"";
private
static
final
String
DEFAULT_ID
=
"-1";
private
String
name;
private
String
id;
private
String
room;
private
String
myOrder="NULL";
private
boolean
isLogin
=
false;
public
boolean
isLogin()
{
SharedPreferences
sp
=
getSharedPreferences("status",
MODE_PRIVATE);
return
sp.getBoolean("islogin",
false);
}
/**
*
0為
未登錄
*
1為登錄
*/
public
void
setLogin(boolean
isLogin)
{
SharedPreferences
sp
=
getSharedPreferences("status",
MODE_PRIVATE);
Editor
edit
=
sp.edit();
edit.putBoolean("islogin",
isLogin);
mit();
}
private
int
version;
public
int
getVersion()
{
SharedPreferences
sp
=
getSharedPreferences("status",
MODE_PRIVATE);
return
sp.getInt("version",0);
}
public
void
setVersion(int
version)
{
SharedPreferences
sp
=
getSharedPreferences("status",
MODE_PRIVATE);
Editor
edit
=
sp.edit();
edit.putInt("version",version);
mit();
}
public
String
getMyOrder()
{
SharedPreferences
sp
=
getSharedPreferences("status",
MODE_PRIVATE);
return
sp.getString("order","NULL");
}
public
void
setMyOrder(String
myOrder)
{
SharedPreferences
sp
=
getSharedPreferences("status",
MODE_PRIVATE);
Editor
edit
=
sp.edit();
edit.putString("order",myOrder);
mit();
}
@Override
public
void
onCreate()
{
super.onCreate();
setName(DEFAULT_NAME);
//
初始化全局變量
setId(DEFAULT_ID);
}
public
void
setName(String
name)
{
SharedPreferences
sp
=
getSharedPreferences("status",
MODE_PRIVATE);
Editor
edit
=
sp.edit();
edit.putString("name",
name);
mit();
}
public
String
getName()
{
SharedPreferences
sp
=
getSharedPreferences("status",
MODE_PRIVATE);
return
sp.getString("name",
"none");
}
public
String
getId()
{
return
id;
}
public
void
setId(String
id)
{
this.id
=
id;
}
public
void
setRoom(String
room)
{
this.room
=
room;
}
public
String
getRoom()
{
return
room;
}
}做注冊(cè)時(shí)的邏輯判斷,onClick事件里:boolean
cancel
=
false;
View
focusView
=
null;
String
id
=
builder.getUserId().trim();
String
password
=
builder.getPassword().trim();
String
passwordConfirm
=
builder.getPasswordConfirm().trim();
final
String
username
=
builder.getUsername().trim();
//
Check
for
a
valid
password.
if
(TextUtils.isEmpty(password))
{
cancel
=
true;
focusView
=
builder.getStuPwdEditText();
}
//
Check
for
a
valid
password.
if
(TextUtils.isEmpty(passwordConfirm))
{
cancel
=
true;
focusView
=
builder.getStuPwdConfirmEditText();
}
if
(!password.equals(passwordConfirm))
{
cancel
=
true;
focusView
=
builder.getStuPwdEditText();
}
//
Check
for
a
valid
Id.
if
(TextUtils.isEmpty(id))
{
cancel
=
true;
focusView
=
builder.getStuIdEditText();
}
//
Check
for
a
valid
username.
if
(TextUtils.isEmpty(username))
{
cancel
=
true;
focusView
=
builder.getStuNameEditText();
}
if(!MatchUtils.match(password)||!MatchUtils.match(passwordConfirm)){
cancel
=
true;
focusView
=
builder.getStuPwdEditText();
ToastUtils.MyToast(getApplicationContext(),
"密碼只能為6位數(shù)字!");
}
if
(cancel)
{
ToastUtils.MyToast(getApplicationContext(),
"輸入有誤,請(qǐng)從新輸入!");
focusView.requestFocus();
}
else
{
//...這里做的網(wǎng)絡(luò)請(qǐng)求
//
TODO
signup
提交服務(wù)器Get請(qǐng)求
//
符合接口規(guī)范
final
String
url
=app.serverAddress+":"+app.serverPort+"?"+"action=signin"+"&"+"username="+username+"&"+"oldpassword="+password;
HttpUtils
http
=
new
HttpUtils();
http.send(HttpMethod.GET,
url,
new
RequestCallBack<String>()
{
@Override
public
void
onSuccess(ResponseInfo<String>
responseInfo)
{
Log.i("tag",
"============success============"+responseInfo.result);
ToastUtils.MyToast(getApplicationContext(),
responseInfo.result);
if(responseInfo.result.equals("success")){
//注冊(cè)成功,自動(dòng)實(shí)現(xiàn)登錄
app.setLogin(true);
app.setName(username);
//更新UI
Message
m
=
Message.obtain();
m.what=1;
handler.sendMessage(m);
ToastUtils.MyToast(getApplicationContext(),
"注冊(cè)成功,學(xué)號(hào):"+username);
}else{
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 金屬鉻還原工操作規(guī)程能力考核試卷含答案
- 拍賣(mài)運(yùn)營(yíng)師崗前工藝控制考核試卷含答案
- 飛機(jī)雷達(dá)安裝調(diào)試工變更管理競(jìng)賽考核試卷含答案
- 鍛件切邊工道德強(qiáng)化考核試卷含答案
- 圓機(jī)操作工安全綜合評(píng)優(yōu)考核試卷含答案
- 自來(lái)水生產(chǎn)工崗前理論水平考核試卷含答案
- 冷鏈物流員安全素養(yǎng)知識(shí)考核試卷含答案
- 化學(xué)農(nóng)藥生產(chǎn)工誠(chéng)信品質(zhì)能力考核試卷含答案
- 塑料熱合工安全意識(shí)競(jìng)賽考核試卷含答案
- 礦山安全設(shè)備監(jiān)測(cè)檢修工安全知識(shí)宣貫?zāi)M考核試卷含答案
- GB/T 38235-2025工程用鋼絲環(huán)形網(wǎng)
- 西醫(yī)基礎(chǔ)知識(shí)培訓(xùn)課件
- 《電磁發(fā)射滅火炮技術(shù)規(guī)范》
- 風(fēng)機(jī)攀爬安全培訓(xùn)課件
- 陜西西安遠(yuǎn)東二中學(xué)2026屆九年級(jí)數(shù)學(xué)第一學(xué)期期末考試模擬試題含解析
- 以人工智能賦能新質(zhì)生產(chǎn)力發(fā)展
- 資產(chǎn)管理部2025年工作總結(jié)與2025年工作計(jì)劃
- 公建工程交付指南(第四冊(cè))
- 2025年貴州省法院書(shū)記員招聘筆試題庫(kù)附答案
- 過(guò)氧化氫氣體低溫等離子滅菌測(cè)試題(附答案)
- 溶出度概況及注意事項(xiàng)很全面的一套資料2講課文檔
評(píng)論
0/150
提交評(píng)論