我有一个处理从RecyclerVIEw选择字符的类,并且一切正常,但是我想用正确的信息更新NavigationVIEw标头中元素的文本.到目前为止,我一直在尝试使用ButterKnife解决此问题,但没有成功.但是,我已经能够以这种方式工作:
private ImageVIEw mImageVIEw;private TextVIEwTitle mTextVIEwname;private TextVIEwRegular mTextVIEwTitle;private static VIEw mheaderVIEw;public voID setheaderVIEw(VIEw headerVIEw) { mheaderVIEw = headerVIEw; selectedCharacterInstance.setheaderVIEwElements();}private voID setheaderVIEwElements() { mImageVIEw = mheaderVIEw.findVIEwByID(R.ID.selected_character_info1); mTextVIEwname = mheaderVIEw.findVIEwByID(R.ID.selected_character_info2); mTextVIEwTitle = mheaderVIEw.findVIEwByID(R.ID.selected_character_info3);}
我从MainActivity传递headerVIEw.我不喜欢这种方法,但是由于我对AndroID编程还很陌生,所以我可能会错了.这是正确的方法吗?有没有办法使用ButterKnife解决此问题? (我尝试过ButterKnife,但是ImageVIEw和TextVIEws始终为null)
解决方法:
我还使用黄油刀作为导航标题.对于标题,我创建一个视图持有人:
protected static class headerVIEwHolder { @BindVIEw(R.ID.user_name) protected TextVIEw mUsernameTxt; @BindVIEw(R.ID.user_email) protected TextVIEw mUserEmailTxt; headerVIEwHolder(VIEw vIEw) { ButterKnife.bind(this, vIEw); }}
然后在我的活动的onCreate方法中:
VIEw header = mNavigationVIEw.getheaderVIEw(0);mheaderVIEwHolder = new headerVIEwHolder(header);mheaderVIEwHolder.mUserEmailTxt.setText(userEmail);
这使我可以像使用其他任何RecyclerVIEw持有人一样使用mheaderVIEwHolder.
总结以上是内存溢出为你收集整理的android-使用ButterKnife访问导航标题元素全部内容,希望文章能够帮你解决android-使用ButterKnife访问导航标题元素所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)