【问题标题】:Passing context in android在android中传递上下文
【发布时间】:2014-05-25 05:20:58
【问题描述】:

这方面的新手想要一些关于知道如何在给定示例中传递类的上下文的建议。

在 AA 类中有类似下面的内容,其中 listtext 是一个 listtype 哈希图。

 List<HashMap<String, String>> listText = atext.get();

 SimpleAdapter adapter = new SimpleAdapter(Context,listText,android.R.layout.simple_list_item_1, from, to);

问题是,Context 应该是您希望在给定场景中显示结果的地方。

那个类是 A1,有一个 Edittext 小部件。

所以这里的问题是如何获取 A1 类的上下文? 在 A1 类的 Edittext 小部件中获取结果。

可能是菜鸟问题,所以请温柔。

感谢回复

【问题讨论】:

  • 我不明白你,但A1.this 为你返回上下文。AAActivity 类?
  • 不!它只是一个简单的类
  • 这样你就可以将上下文传递给AA类的构造函数
  • Activity类是哪一个。
  • A1 是活动类。而 AA 是一个简单的类。

标签: android android-activity hashmap adapter android-context


【解决方案1】:

改变-

 List<HashMap<String, String>> listText = atext.get();

 SimpleAdapter adapter = new SimpleAdapter(Context,listText,android.R.layout.simple_list_item_1, from, to);

 List<HashMap<String, String>> listText = atext.get();

 SimpleAdapter adapter = new SimpleAdapter(getApplicationContext(),listText,android.R.layout.simple_list_item_1, from, to);

【讨论】:

    【解决方案2】:

    创建AA类的构造函数,在A1中初始化AA时,传递A1的上下文。在课堂AA

    private Context context;
    public AA(Context a1){
        this.context = a1;
    }
    

    在课堂A1:

    AA aa = new AA(getContext());
    

    然后就可以使用了

    SimpleAdapter adapter = new SimpleAdapter(context,listText,android.R.layout.simple_list_item_1, from, to);
    

    【讨论】:

    • 我确定你在构造函数中 A1 的意思是 Context (Context a1)
    • @shayan pourvatan 是的。实际上,如果 A1Activity,那么它也是 Context
    • 那么应该用什么来代替“上下文”??在 Simpleadapter 的语法中的意思。
    • 如果您将 A1 更改为 Context 会更好,因为也许 OP 希望将此类与另一个上下文一起使用。
    • @JaneWi.S 然后您可以使用Context 的上下文,使用(小写c
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-08
    • 2022-11-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多