我想从helperClass中的方法(从Activity扩展)中将一些信息设置到textView组件中,但如果我正在尝试使用textView,我总是会得到空指针异常。
TextView stateTv = (TextView) findViewById(R.id.state);
如何在简单的Helper类中正确完成?
在主要和其他活动中它是有效的。
感谢您的任何建议。
示例包括:
/**
* Set actual position to textview
*
* @return void
* @throws Exception
*/
public void setPositionToView (Context ctx) {
try {
// HERE I GET NULL POINTER EXCEPTION
TextView stateTv = (TextView) findViewById(R.id.state);
stateTv.setText(R.string.position_is_set);
stateTv.setTextColor(getResources().getColor(R.color.green));
} catch (Exception e){
Log.e(AppHelper.APP_LOG_NAMESPACE, "setPositionToView method cannot be processed", e);
e.printStackTrace();
}
}
答案 0 :(得分:1)
添加
if( stateTv != null ) {
...
它看起来这个布局应该有这个小部件,所以如果你的应用程序崩溃,修复布局,因为这是正确的方法。此外,没有关于您正在尝试查找窗口小部件的上下文的信息(可能这是错误的视图)。