0

我正在以编程方式创建动态 UI,在主类中我正在创建 UI 元素,以便以后可以将其添加到TableLayout视图中。通常我这样声明:

TextView tw_1_2 = new TextView(this);

this上下文在哪里。由于我从来没有清楚地理解上下文,有人可以告诉我如何TextView在另一个类中声明它(例如,作为公共静态),如果我想在其他类中声明这个视图,我应该在上下文中放置什么?

4

1 回答 1

1

基本上,您必须从称为新类的活动中发送上下文。为此,您可以使用构造函数将上下文数据发送到类的新对象。我有一个例子展示了如何创建一个构造函数并使用它。例如,这是您的 ExampleClass:

public class ExampleClass{
    private final Context context;

    public ExampleClass(Context context) {
            this.context = context;
    }

}

并在您的活动课程中执行以下操作:

ExampleClass ex1 = new ExampleClass(MainActivity.this);

如果你想将你的类用作静态,你必须只将你的类和上下文变量定义为没有构造函数的静态变量,并且设置上下文等于你的上下文。我希望这对你有帮助。

于 2013-10-04T20:50:04.063 回答