尝试在android中调用SetContentView()时获取java.lang.NullpointerException

时间:2015-11-03 16:49:09

标签: android android-activity setcontentview

我从另一个活动类调用一个活动类的方法。在该方法中,我调用setContentView()传递另一个xml文件(不同于我在我的第一个类(调用类)中显示的xml文件.So while调用setContentView(),我得到null pointerException。 请在下面找到我的代码: 调用类

mainListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {



    DisplayMessageActivity d=new DisplayMessageActivity();
    try {
        Toast.makeText(CallWebserviceActivity.this, "position"+position, Toast.LENGTH_SHORT).show();

        d.showmessage(arrays, position,CallWebserviceActivity.this);
    } catch (Exception e) {
        e.printStackTrace();
    }
}

});

调用setContentView()的新类:

公共类DisplayMessageActivity扩展了Activity {

public void showmessage(ArrayList<JSONObject> arrays,int position,Context context) throws Exception {

 RelativeLayout relatelayout;

    setContentView(R.layout.showdetails);

    Toast.makeText(DisplayMessageActivity.this, "DisplayMessageActivity", Toast.LENGTH_SHORT).show();




}

1 个答案:

答案 0 :(得分:2)

主要问题是DisplayMessageActivity d=new DisplayMessageActivity();。活动不应由您创建,而是由使用Intent的框架创建,其中包含描述目标组件和startActivity(Intent)的信息。另外,通常在onCreate()中设置内容视图。

看起来您可能会尝试按照此示例进行操作? http://developer.android.com/training/basics/firstapp/starting-activity.html