';void android.widget.TextView.setText(java.lang.CharSequence)和#x27;关于空对象引用

';void android.widget.TextView.setText(java.lang.CharSequence)和#x27;关于空对象引用,android,listview,android-fragments,nullpointerexception,Android,Listview,Android Fragments,Nullpointerexception,我将在我的片段上添加一些(测试)listview,但应用程序立即崩溃。这是代码 public class ListPassword extends Fragment { private String accountID , masterUsername; private ListView lv; private TextView masterUsernameTXT; private String[][] showingData; String[] title = { "a" , "b" , "

我将在我的片段上添加一些(测试)listview,但应用程序立即崩溃。这是代码

public class ListPassword extends Fragment {

private String accountID , masterUsername;
private ListView lv;
private TextView masterUsernameTXT;
private String[][] showingData;
String[] title = { "a" , "b" , "c" , "d" , "e" };
String[] description = { "aaa" , "bbb" , "ccc" , "ddd" , "eee" };
String[] updateDate = { "000" , "111" , "222" , "333" , "444" };
int recordRow = 0;

public static ListPassword newInstance() {
    ListPassword fragment = new ListPassword();
    return fragment;
}

public ListPassword() { }

public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    View rootView = inflater.inflate(R.layout.fragment_listpassword, container, false);

    String[] title = { "a" , "b" , "c" , "d" , "e" };
    String[] description = { "aaa" , "bbb" , "ccc" , "ddd" , "eee" };
    String[] updateDate = { "000" , "111" , "222" , "333" , "444" };

    lv = (ListView)rootView.findViewById(R.id.listview_password);
    SpinnerAdapt adapter = new SpinnerAdapt(getActivity(),title, description, updateDate);
    lv.setAdapter(adapter);

    return rootView;
}
我试图通过阅读logcat来解决这个问题,并发现了以下错误

致命异常:主 进程:com.example.new_ang_ja_kai_la.masterpassword,PID:21591 java.lang.NullPointerException:尝试调用虚拟方法“void” 空值上的android.widget.TextView.setText(java.lang.CharSequence)“” 对象引用 在com.example.new_ang_ja_kai_la.masterpassword.spinneradap.getCustomView(spinneradap.java:63)上

SpinnerAdapt如下所示(我从我的朋友那里得到的)

当我调试完这个。上面说

错误发生在“lv”行= (ListView)rootView.findViewById(R.id.ListView_密码);“

调试完成时显示lv的值为空

我不知道如何解决这个问题,因为我已经检查了R.id.listview\u密码是否是正确的引用(通过ctrl+单击它),所以我可以已经放置了指针


我已签出解决方案,但没有任何帮助。

您可以在错误消息中看到,您的应用程序正在SpinnerAdapter类的第63行崩溃。因此,请张贴这个类的代码,以便我们可以帮助你

编辑: 不带支架试一试:

if (convertView == null) {
    LayoutInflater inflater = LayoutInflater.from(activity);
    convertView = inflater.inflate(R.layout.item_listview_storedpassword, parent, false);
}

TextView rowTitle= (TextView) convertView.findViewById(R.id.passwordTitle);
TextView rowDescription = (TextView) convertView.findViewById(R.id.passwordDescription);
TextView rowUpdateDate = (TextView) convertView.findViewById(R.id.passwordDescription);

if(rowTitle != null) rowTitle.setText(title[position]);
if(rowDescription != null) rowDescription.setText(description[position]);
if(rowUpdateDate != null) rowUpdateDate.setText(updateDate[position]);

return convertView;

错误发生在“lv=(ListView)rootView.findViewById(R.id.ListView_密码);”行“^很抱歉立即输入。我找不到编辑按钮。Sry;-;您询问的代码将很快出现在下一个评论部分。谢谢你的帮助我已经编辑了这篇文章。Thx for your support即使没有保持器,TextView仍然可以为null。将其更改为检查null指针。实际上,错误发生在spinneradap.java的第63行
if (convertView == null) {
    LayoutInflater inflater = LayoutInflater.from(activity);
    convertView = inflater.inflate(R.layout.item_listview_storedpassword, parent, false);
}

TextView rowTitle= (TextView) convertView.findViewById(R.id.passwordTitle);
TextView rowDescription = (TextView) convertView.findViewById(R.id.passwordDescription);
TextView rowUpdateDate = (TextView) convertView.findViewById(R.id.passwordDescription);

if(rowTitle != null) rowTitle.setText(title[position]);
if(rowDescription != null) rowDescription.setText(description[position]);
if(rowUpdateDate != null) rowUpdateDate.setText(updateDate[position]);

return convertView;