在下面的代码中,我对活动回复作出反应。当我得到正确的代码和结果时,我想将“数据”的结果放入一个不可编辑的文本视图中。我尝试使用以下代码将文本视图直接设置为intent数据:
encodedText.setText(data.getData().toString());
但是当我尝试这样做时,我收到异常错误。然后我尝试按照以下方式进行操作(参见箭头):
public void onActivityResult(int requestCode, int resultCode, Intent data)
{
if (requestCode == request_Code) {
if (resultCode == RESULT_OK) {
String encoded = data.getData().toString();
TextView encodedText = (TextView) findViewById(R.id.result);
encodedText.setText(encoded); <------
}
}
}
我在代码示例中箭头所指向的行处设置了一个断点,并且该行程序存在问题。我查看了textView文档中的setText()函数,我仍然不确定我做错了什么。有人看到我不知道的吗?
答案 0 :(得分:1)
因为我认为它首先是一个String对象,所以你可以把它抛出来。
String encoded = (String) data.getData();
答案 1 :(得分:1)
您尝试设置文字NullPointerException
时收到encodedText.setText(encoded);
,因为您使用TextView
查找的findViewById()
为null
。检查您的布局,确保布局中包含此TextView
并避开NullPointerException
。