編輯:Android開發教程
在博客中有登陸界面的文章http://blog.csdn.net/vestigge/article/details/8124674
就不在重復了,直接看登陸的代碼,
用Mina傳遞字符串上節已經看過了,要實現傳遞對象,也非常簡單,只需要修改一下過濾器:
chain.addLast("codec", new ProtocolCodecFilter(new ObjectSerializationCodecFactory()));
在Android客戶端,登陸的Activity中:
public class LoginActivity extends Activity{
private EditText accountEditText;
private EditText passwordEditText;
private CheckBox remeberCheckBox;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_login);
accountEditText=(EditText) findViewById(R.id.login_account);
passwordEditText=(EditText) findViewById(R.id.login_password);
remeberCheckBox=(CheckBox) findViewById(R.id.login_remember);
findViewById(R.id.login_login).setOnClickListener(new OnClickListener(){
public void onClick(View v) {
if(accountEditText.getText().toString().equals("") ||
passwordEditText.getText().toString().equals("")){
Toast.makeText(LoginActivity.this, "賬號或密碼不能為空!", Toast.LENGTH_SHORT).show();
}else{
User user=new User();
user.setAccount(Integer.parseInt(accountEditText.getText().toString()));
user.setPassword(passwordEditText.getText().toString());
user.setOperation(VQMessageType.LOGIN);
boolean b=new VQClient().sendLoginInfo(user);
//如果登錄成功
if(b){
Toast.makeText(LoginActivity.this, "登陸成功!", Toast.LENGTH_SHORT).show();
startActivity(new Intent(LoginActivity.this,MainActivity.class));
}else{
Toast.makeText(LoginActivity.this, "連接超時,登陸失敗!", Toast.LENGTH_SHORT).show();
}
}
}
});
}
}
android 4.3截屏功能的嘗試與失敗分析
1.背景上一篇講了在源碼中捕獲到了android手機的截屏函數(同時按下電源鍵與音量減,詳情http://blog.csdn.net/buptgshengod/artic
面向大眾的移動技術:Android應用程序生命周期中的活動與圖標
簡介如今移動設備的功能已經強大到難以置信,比眾多開發人員用來編寫首個程序的桌面計算機還 要強大得多。因此,大家很容易忘記移動設備仍然屬於資源有限的環境。開發移動應用程序時
Android GUI系統之SurfaceFlinger(3)
Android中的本地窗口FramebufferNativewindow 1.1 Android中的本地窗口在OpenGL的學習過程中,我們不斷提及&ldquo
Android系統聯系人全特效實現(上),分組導航和擠壓動畫
記得在我剛接觸Android的時候對系統聯系人中的特效很感興趣,它會根據手機中聯系人姓氏的首字母進 行分組,並在界面的最頂端始終顯示一個當前的分組。如下圖所示:最讓我感興