编辑:我知道空指针异常是什么。我的问题是它为什么会发生,因为我已经初始化了所有内容。
我的Android应用程序出现问题,我在片段中输入了一些文本,将数据保存到对象中并将所述对象传回回调。
@BindView(R.id.new_post_title_til)
TextInputLayout mTitleTil;
@BindView(R.id.new_post_body_til)
TextInputLayout mBodyTil;
@BindView(R.id.new_post_title)
TextInputEditText mTitle;
@BindView(R.id.new_post_body)
TextInputEditText mBody;
@BindView(R.id.button)
Button send;
private Post mPost;
@OnClick(R.id.button)
public void submit() {
UserPost post = new UserPost.Builder()
.title(mTitle.getText().toString())
.body(mBody.getText().toString())
.build();
mPost.onUserPost(post);
getFragmentManager().popBackStack();
}
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.fragment_new_post, container, false);
ButterKnife.bind(this, v);
return v;
}
@Override
public void onAttach(Context context) {
super.onAttach(context);
try {
mPost = (Post) context;
} catch (ClassCastException e) {
e.printStackTrace();
}
}
public interface Post {
void onUserPost(@NonNull UserPost post);
}
每当我点击提交按钮时,我都会得到正确的toast,我的应用程序崩溃并显示错误消息。数据正在保存,但出于某种原因,只要按下提交按钮,应用程序仍然会崩溃。