java如何在Android应用程序的新窗口中显示字符串?
基本上,我想按下一个按钮,在一个新的空白窗口中显示一个预定义的字符串变量。我试过几种方法,但都不管用。这是我的第一个应用程序,所以我对如何使用类没有太多的知识。这是我现在为Onclick操作编写的代码
public void receivedata(View data) {
Intent intent= new Intent(this, ReceivedataActivity.class);
intent.putExtra("My Message", false);
startActivity(intent);
}
这是我在课堂上的代码
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.receivedata);
Intent intent = getIntent();
String message = intent.getStringExtra("My Message");
TextView comm = (TextView) findViewById(R.id.textView1);
comm.setTextSize(40);
comm.setText(message);
setContentView(comm);
if (savedInstanceState == null) {
getSupportFragmentManager().beginTransaction()
.add(R.id.container, new PlaceholderFragment()).commit();
}
}
每当我按下按钮,应用程序就会崩溃。。。有什么办法吗
这就是LogCat所说的:这就是te LogCat所说的E/AndroidRuntime(11090):java。lang.RuntimeException:无法启动活动组件信息{com.example.mcudisplay/com.example.mcudisplay.ReceivedataActivity}: JAVAIllegalStateException:您需要使用一个主题。此活动的AppCompat主题(或子代)
# 1 楼答案
尝试在不使用以下命令的情况下运行应用程序:
您已经将内容视图设置为receivedata。xml文件
# 2 楼答案
您两次调用setContentView,这表明其中一个调用是错误的,没有必要的。或者
R.layout.receivedata
包含您正在使用findViewById()
检索的文本视图,并且您不想再次调用;或者你的意思是只使用TextView调用setContentView
,在这种情况下,你应该使用LayoutFlater单独充气,或者使用new
创建它