2010-06-29 86 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);