A. android中一個頁面如何同時傳值到多個頁面
1、最簡單的方法,設置一個public static變數,直接更改這個值,其他界面可以直接使用,不過不是很推薦。
2、使用廣播發送消息,其他界面接收。
B. android開發,請問下兩個Activity之間如何傳遞textView上的值
在startActivity的會後,通過Intent中傳值,比如
java">//啟動B
Intentbintent=newIntent(A.this,B.class);
//設置bintent的Bundle的一個值
Stringbsay=textView.getText().toString();//獲取textview的值
bintent.putExtra("listenB",bsay)
startActivity(bintent,0);
C. Android 普通類中怎麼向activity中傳值
什麼叫普通類?在android四大組件當中,傳值普遍採用的是Intent還有Bundle這樣的形式
以Text為例
發送方是 Intent intent = new Intent(Context context,otherActivityOrService.class);
intent.putExtra("key","yourText");
startActivity(intent);//如果啟動的是service就使用startService(intent);
接收方如果是Service或是BroadcastReceiver會在生命周期方法中直接獲得intent
如果接收方仍然是一個Activity那麼應該使用Intent intent = getIntent();
然後用
String text = intent.getStringExtra("key"); 這樣的方式來獲取傳過來的值
D. android中Activity類和BroadcastReceiver類之間如何傳值
android中組件傳值可以使用Intent類,裡面有一個bundle類,用於保存數據,可以在activity或者BroadcastReceiver類中得到,示例如下:
啟動一個Activity,可以使用如下方法
Intentintent=newIntent(this,BroadcastClass);
intent.putExtra(name,value);
sendBroadcast(intent);
E. android是值傳遞還是引用傳遞
在不同的編程語言中可能會大同小異吧
在C#中,這些都是針對方法而言的。
值傳遞指的是方法被調用時傳遞進來的參數是一個副本(拷貝),而不是傳遞進來參數本身。換句話說對值傳遞參數的修改不會影響到調用方傳遞的參數對象;
而引用傳遞指的是方法被調用時傳遞進來的參數是一個引用,換句話說傳遞進來的參數是指向調用方傳遞的參數本身的。對引用傳遞的參數的修改會影響到調用方傳遞的參數對象。
F. android開發如何在頁面之間傳參
第一個頁面跳轉 傳遞值
Button bn1=(Button)findViewById(R.id.btn_Login); //跳轉
bn1.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
Intent intent=new Intent(tiaoz.this,nexts.class);
//傳值
EditText txt_username=(EditText)findViewById(R.id.edit_username);
EditText txt_password=(EditText)findViewById(R.id.edit_password);
Bundle bundle = new Bundle();
bundle.putString("key_username", txt_username.getText().toString());
bundle.putString("key_password", txt_password.getText().toString());
intent.putExtras(bundle);
startActivity(intent);
finish();
}
});
第二個頁面接收值
Bundle bunde = this.getIntent().getExtras();
String strs="用戶名:"+bunde.getString("key_username").toString()+"密碼:"+bunde.getString("key_password").toString();
//改變文本框的文本內容
show.setText(strs);
G. android activity之間傳值
不要隨便使用static
雖然簡單但是很容易造成內存泄漏等問題。可以使用handle傳值,每一次主activity更新了值就發msg出來,或者用回調,或者廣播。
H. android 傳值判斷問題
字元串比較可以這樣寫:
if(temp_s.equals(str_delivery)){
...
}
I. android兩個activity之間傳值
Activity之間是沒有辦法直接傳遞數據的。Android的設計原則是,用Intent在不同的Activity和進程之間進行通信,但是通常來講,Intent中只能存入基本數據類型和系統默認支持的比如Uri之類的。那麼對於用戶自己定義的數據結構是無法直接用Intent來傳送的,如果想要通過Intent來傳遞自定義數據,可以讓數據結構實現Parcelable介面,這樣就可以把數據放入Intent。但是Intent的傳送效率也不是很高,特別是當傳遞一些如Bitmap的大數據,用Intent傳遞超過500K的Bitmap,就會造成Framework層的Java Binder掛掉,結果就是傳遞不成功。
這點可以算成是Android的一個弊端,沒有很好的解決方案。能做到的就是盡量設計的時候注意,盡量讓Activity之間共享基本數據類型。
Android本身的應用中也深受其害,可以看到有很多應用程序的源代碼中的主要的類在三千行以上的不在少數,比如Browser中的BrowserActivity有四千多行;Mms中的ComposeMessageActivity也有四千多行,等等。為什麼一個類會如此之大,就是因為它們是程序的主頁面,是業務的核心邏輯所在,裡面也控制著很多的其他的數據結構,而又無法與另外的Activity共享,所以就只能在一個Activity裡面做所的事情。
J. android service 在執行中怎麼傳值
在activity中
Intent regIntent = new Intent(this, ChatService.class);
regIntent.putExtra("student_id", student_id);
startService(regIntent);
然後再service中的onStart函數中獲取該值
student_id=intent.getStringExtra("student_id");
System.out.println("sevice_student_id---------------"+student_id);
當然寫到這里還是不能傳的,不然會報錯!!!
我們需要在Mainfeist文件中注冊這個service
銷毀Service寫在activity的onDestroy方法里:
@Override
protected void onDestroy() {
ChatActivity.this.stopService(new
Intent(ChatActivity.this,
ChatService.class));
super.onDestroy();
}