RelativeLayout的参数中“ this”的用法

时间:2018-12-28 11:07:13

标签: java android

package com.example.sumant.myapplication2;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.RelativeLayout;
import android.widget.Button;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        RelativeLayout myLayout=new RelativeLayout(this);
        Button myButton =new Button(this);
        myLayout.addView(myButton);
        setContentView(myLayout);

    }
}

“ this”变量用作当前对象的引用。但是我不明白为什么在上面的代码中将它用作参数。我能够判断出,也许RelativeLayout类的构造函数可能已被参数化,并且我们向它传递了一个相同类的对象以初始化RelativeLayout对象。有人可以向我详细说明吗。

2 个答案:

答案 0 :(得分:0)

在Java中,“ this”变量是当前对象的引用。

RelativeLayout myLayout=new RelativeLayout(this);

但是android这些情况是其构造函数参数,它引用活动/片段的上下文

答案 1 :(得分:0)

您正在调用this作为参数的Context方法public RelativeLayout (Context context)

了解Android上的“上下文”是什么?访问here