0

我有一个主要活动TextViews和想要修改主要活动的类TextViews

我在课堂上的方法中不断产生NullPointerException错误。findViewbyID我假设是因为我没有将 View 传递给类方法。我该怎么做呢?

4

2 回答 2

4

您需要使用构造函数将 Activity 实例传递给您的非 Activity 类,以访问非 Activity 类中的所有 UI 元素:

public class NonActivity{
Activity activity;
Context context;

public NonActivity(Activity activity,Context context) {
  this.activity=activity;
  this.context=context;
 }

}

现在您可以从 NonActivity 类中的 Activity 访问 UI 元素,如下所示:

 TextView textview=(TextView)activity.findViewbyID(R.id.textview);
于 2013-01-10T05:46:32.047 回答
0

在您的 Activity 中,如果您使用setcontentView(R.layout.yourlayout)then 所有后续都findViewById()对应于中的视图yourlayout.xml。在第二个活动中,您试图找到第一个活动的布局视图,这就是您获得NullPointerException. 为什么要在另一个活动中操作此活动的视图?我建议您在第一个活动中操纵视图。

于 2013-01-10T05:49:30.430 回答