編輯:初級開發
以下是入口Activity:
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.VIEw;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class MainActivity extends Activity {
/** Called when the activity is first created. */
private static final String TAG="MainActivity";
private EditText user;
private EditText passwd;
private Intent intent;
private Button login;
private Button cancle;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentVIEw(R.layout.main);
user=(EditText) this.findVIEwById(R.id.uid);
passwd=(EditText) this.findVIEwById(R.id.pwd);
login=(Button)this.findVIEwById(R.id.login);
cancle=(Button)this.findVIEwById(R.id.cancle);
login.setOnClickListener(new VIEw.OnClickListener() {
@Override
public void onClick(VIEw v) {
String uname=user.getText().toString().trim();
String passWord=passwd.getText().toString().trim();
Log.i(TAG, uname+":"+passWord);
if("liuyong".equals(uname)&&"007".equals(passWord)){
intent=new Intent();
Bundle bun=new Bundle();
bun.putString("name", uname);
bun.putString("pass", passWord);
intent.putExtras(bun);
intent.setClass(MainActivity.this, LoginSuccess.class);
MainActivity.this.startActivity(intent);
}else{
Toast.makeText(MainActivity.this, "用戶名或密碼錯誤", 1).show();
}
}
});
cancle.setOnClickListener(new VIEw.OnClickListener() {
@Override
public void onClick(VIEw v) {
MainActivity.this.finish();
}
});
}
}
跳轉成功顯示如下activity:
package com.ly.activity;
import Java.util.Date;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.widget.TextVIEw;
public class LoginSuccess extends Activity {
private TextView showVIEw;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentVIEw(R.layout.loginok);
Intent intent=this.getIntent();
Bundle bun=intent.getExtras();
String name= (String) bun.get("name");
//SimpleDateFormat format=new SimpleDateFormat("yyyy-mm-dd HH:mm:ss");
//String time=format.format(new Date());
showView=(TextView)this.findVIEwById(R.id.show);
showVIEw.setText(""+"歡迎 "+name+" 使用服務"+" 本次登陸時間為: "+new Date().toLocaleString());
Log.i("LoginSuccess", name);
}
如若直接在LoginSuccess裡獲取Bundle,則會出現如下錯誤:
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.ly.activity/com.ly.activity.LoginSuccess}: Java.lang.NullPointerException
換成先獲取Intent然後取得Bundle,就能正常運行。
如下是Andorid裡的常見單位描述:
px (pixels)像素 -- 一般我們HVGA代表320x480像素,這個用的比較多。
dip或dp (device independent pixels)設備獨立像素 -- 這個和設備硬件有關,一般我們為了支持WVGA、HVGA和QVGA cwj推薦使用這個,不依賴像素。
sp (scaled pixels ― best for text size)放大像素-- 主要處理字體的大小。
上課講義之 1: 高煥堂講解 Intent-based ProgrammingAndroid的4種嫡系組件(即Activity、Service、IntentReceiv
最近逛其它論壇的時候看到有這樣一個問題,需要界面加載完成後自動彈出軟鍵盤。開始我認為沒有那麼麻煩,最後自己做了一個小例子,還真不好搞定,直到昨天再想這個的問題的時候,想
package com.example.android.apis.graphics;23.TextAlign: 設置Path路徑,貝賽爾曲線1:
圖2:OPhone的水平分工體制通信運營商中國移動占據主導。軟件開發和終端開發由播思通訊和各終端廠商負責。日本的窗口為鵬開科技。(圖:播思通訊的圖片。佐佐木陽拍攝,中國