【问题标题】:What does the context parameter do in Android and what should it be defined as?android中的context参数有什么作用,应该定义成什么?
【发布时间】:2013-05-01 02:06:42
【问题描述】:

我对 Android 开发非常陌生,我正在尝试创建一个视图,这可以通过 alloc 然后 initWithFrame ... 在带有 Cocoa Touch 的 Obj-C 中轻松完成,但在 Java 中它使用 @987654330 @ 方法,我坚持定义变量 contextLinearLayout() 的参数。

我看到有些人使用this 作为参数,即new LinearLayout(this),但我不明白这个参数实际上是做什么的,如果有人能给我一些指导,我将不胜感激。论据。

LinearLayout layout = new LinearLayout(context);

context 应该是什么?我应该如何定义它?它有什么作用?我应该赋予它什么价值?

【问题讨论】:

标签: android


【解决方案1】:

简单的方法是

只需如下声明变量,

private Context context;

和onCreate()方法,赋值如下,

public void onCreate(Bundle savedInstanceState) 
{
     super.onCreate(savedInstanceState);
     context = this;
     ...
}

你也可以通过如下方式赋值,

context = getApplicationContext();

您可以通过调用 getApplicationContext()、getContext()、getBaseContext() 或 this(在活动类中时)来获取上下文。

【讨论】:

【解决方案2】:

Context是一个抽象类,其实现由Android系统给出。它有助于使用应用程序资源、启动活动、广播等等。

它告诉编译器你当前属于哪个上下文活动或应用程序你想显示。大多数情况下,我们在初始化视图时给出活动的上下文。

LinearLayout layout = new LinearLayout(ActivityName.this);

或者您可以像这样在活动开始时初始化一个变量

private Context context;

//in activity class 
context=ActivityName.this;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-21
    • 2012-06-02
    相关资源
    最近更新 更多