我正在完成Google提供的教程,学习如何制作Android应用,我不明白为什么在创建TextView时会将其作为参数传递。这是代码
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_display_message);
Intent intent = getIntent();
String message = intent.getStringExtra(MainActivity.EXTRA_MESSAGE);
TextView textView = new TextView(this); //The line in question, why do they use "new TextView(this)
textView.setTextSize(40);
textView.setText(message);
setContentView(textView);
答案 0 :(得分:2)
您应首先阅读Java文档,因为Android开发的大部分内容需要对语言基础知识有深刻的理解。 This link解释了this
的使用情况。
this
是对onCreate
所属的类的当前实例的引用。在这种情况下,它引用Activity
实例。
TextView
构造函数将Context
对象作为参数,Activity
类本身扩展Context
。
这种方法onCreate
创建属于此活动的TextView
。
答案 1 :(得分:0)
从here可以看出,构造函数需要一个Context类型的变量。 TextView需要这个,所以它可以理解程序当前正在发生什么。
答案 2 :(得分:0)
“This”是当前对象的引用,因此查看保存该方法的类。
答案 3 :(得分:0)
答案 4 :(得分:0)