getApplicationContext()在使用时抛出异常

时间:2011-01-31 13:31:10

标签: android exception android-context

我已根据现有Android项目中的另一个指定了一个类。 addRow()方法应该动态地向表添加行。 在创建要添加到我的行的新TextView时以及创建该行时,我应该指定“上下文”。当前的方式,尝试“getApplicationContext()”会抛出NullPointerException。 那么我应该从哪里获得上下文?

public class DistanceTableView extends ContactListActivity
{
    public void addRow(LocationMessage locationMsg){
        View messageView = theInflater.inflate(R.layout.homepage, null);
        TableLayout table = (TableLayout)messageView.findViewById(R.id.distanceTable);

        TextView senderNameTextView = new TextView(getApplicationContext());
        senderNameTextView.setText(locationMsg.getSenderName());

        TableRow tr = new TableRow(getApplicationContext());
        tr.addView(distanceTextView);
        table.addView(tr);

        rows.addFirst(messageView);
    }
}

我的观点正在扩展的类:

public class ContactListActivity extends MapActivity implements
        ConnectionListener {}

2 个答案:

答案 0 :(得分:3)

我猜你必须将上下文传递给你的类的构造函数。

答案 1 :(得分:0)

请改为尝试:

TableRow tr = new TableRow(this);