編輯:關於Android編程
要求被傳遞的對象必須實現上述2種接口中的一種才能通過Intent直接傳遞
Intent中傳遞這2種對象的方法:
Bundle.putSerializable(Key,Object); //實現Serializable接口的對象 Bundle.putParcelable(Key, Object); //實現Parcelable接口的對象Person.java
package com.hust.bundletest;
import java.io.Serializable;
public class Person implements Serializable {
String name;
String password;
String sex;
public Person(String name, String password, String sex) {
super();
this.name = name;
this.password = password;
this.sex = sex;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
}
注冊窗體發送Intent的代碼:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btn=(Button) findViewById(R.id.button1);
btn.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
//獲得的三個組件
EditText name=(EditText) findViewById(R.id.name);
EditText password=(EditText) findViewById(R.id.password);
RadioButton male=(RadioButton) findViewById(R.id.radio0);
//判斷是否被選
String sex=(male.isChecked())?"男":"女";
//封裝成一個對象
Person p=new Person(name.getText().toString(),password.getText().toString(),sex);
//創建Bundle對象
Bundle bundle=new Bundle();
bundle.putSerializable("person", p);//Bundle中放一個對象
//創建一個Intent對象
Intent intent=new Intent(MainActivity.this,ResultActivity.class);
intent.putExtras(bundle);
//啟動intent對應的Activity
startActivity(intent);
}
});
接收端的代碼:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_result);
//獲取顯示組件
TextView name=(TextView) findViewById(R.id.text1);
TextView password=(TextView) findViewById(R.id.text2);
TextView sex=(TextView) findViewById(R.id.text3);
//獲取Intent對象
Intent intent=getIntent();
//從Intent對象中獲取序列數據
//Person p=(Person) intent.getSerializableExtra("person");相當於
Bundle bundle=intent.getExtras();//獲取Bundle對象
Person p=(Person) bundle.getSerializable("person");//Bundle對象中獲取可序列化對象
name.setText(p.getName());
password.setText(p.getPassword());
sex.setText(p.getSex());
}
以上就可以實現對象的傳遞。
輕松實現RecycleView的下拉刷新、加載更多
那如同這個題目,這裡面涉及的東西其實還是比較多的,RecycleView SwipeRefreshLayout,下拉刷新(這個就是SwipeRefreshLayout的)
Android高手進階教程(二十二)之Android中幾種圖像特效處理的集錦匯總!!
大家好,這一節給大家分享的是Android中幾種圖像特效處理的小技巧,比如圓角,倒影,還有就是圖片縮放,Drawable轉化為Bitmap,Bitmap轉化為Drawab
Android——Service總結
一、 Service簡介Service是android 系統中的四大組件之一(Activity、Service、BroadcastReceiver、ContentProv
如何利用matrix實現圖片倒影效果
本文主要內容就是用marix加上漸變色實現圖片倒影的效果,步驟如下: 1. 獲取需要倒影效果的圖片,這裡取原圖片的一半 2. 添加顏色漸變到倒影圖片上