2010-06-29 91 views
0

我正在爲我的應用程序選擇一個標籤式佈局,而且我遇到了一些麻煩。我有主要的活動,然後我有子活動(每個標籤一個)。在一個子活動中,我將TextView設置爲活動的公共成員。使用主要活動,如何在子活動中的TextView上調用.setText()?謝謝!從另一個活動訪問成員

回答

1

爲了實現這個目標,您的主要活動目的是發送額外的東西,在SubActivity中接收並在TextView中設置文本。

來源::

Bundle bundle = new Bundle(); 
bundle.putString("Title","Accessing members in one Activity from another"); 
Intent newIntent = new Intent(MainActivity.this, SubActivity.class); 
newIntent.putExtras(bundle); 
startActivity(newIntent); 

目標::

Bundle bundle = getIntent().getExtras(); 
String ReceivedTitle = bundle.getString("Title"); 

TextView.setText(ReceivedTitle); 
+0

如果我想這個多次,就像從一個計時器呢? – Chiggins 2010-06-30 02:12:12

+0

你是不是每秒都會將數據從你的MainActivity發送到你的SubActivity?嗯,這不是一個好方法。我thik你會實施一項服務!在後臺運行並將其與您的活動綁定=) – Jorgesys 2010-06-30 15:00:43

0

一種選擇是在啓動子活動Intent時,使用putExtras傳遞想要在子活動上設置的文本字符串。然後,在創建或開始時,執行setText。

意圖myIntent = new Intent();

myIntent.setClassName(「com.mypackage」,「com.mypackage.SubActivity」);

myIntent.putExtra(「com.mypackage.MyText」,「Hello World」);

startActivity(myIntent);