当我第一次运行示例HelloWorld应用程序时,它会在模拟器上显示hello world文本。然后我决定删除它并制作一个按钮。我想要的是当我点击按钮时,它会显示一个文本“这是第二个活动”。我创建了另一个XML文件和另一个类来处理显示文本的第二个活动。但是当我再次运行时,我无法在模拟器的UI上看到更改。单击按钮后,文本“这是第二个活动”没有显示。我救了一切。在对设计进行一些更改后,如何自动更新模拟器的UI?我是android开发的新手。请帮我。顺便说一句,我无法发布图像,所以它需要10点声望,这就是我使用在线图像查看的原因。对不起。
这是我在eclipse上的图形布局:activity_main.xml
http://s16.postimg.org/wusm4qrp1/image.png
second.xml
http://s29.postimg.org/qft17p5on/image.png
运行模拟器:
http://s28.postimg.org/f9dn32ku5/image.png
单击按钮后(在这种情况下,我编辑的文本未显示):
答案 0 :(得分:0)
因为你没有发布你的代码,我会尝试从头开始解释它。
我不知道你是否可以通过其他方式实现,但以下答案假设我们的目标是良好的编程实践。
这两个活动都有以下列方式设置的不同布局,对吧?
public class MyFirstActivity extends Activity{
...
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_first);
...
public class MySecondActivity extends Activity{
...
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
...
然后,在第一个活动中,定义按钮的onClickListener
...
setContentView(R.layout.activity_first);
Button myButton = (Button)findViewById(R.id.my_button);
myButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(MyFirstActivity.this, MySecondActivity.class);
startActivity(intent);
}
});
话虽这么说,但我不建议您为此功能开展两项活动。当您需要不同的布局时,您应该有不同的活动。将按钮和textview放在相同的布局中并在按钮的onclicklistener中更新textview是一个更好的解决方案。