android-使用ButterKnife访问导航标题元素

android-使用ButterKnife访问导航标题元素,第1张

概述我有一个处理从RecyclerView选择字符的类,并且一切正常,但是我想用正确的信息更新NavigationView标头中元素的文本.到目前为止,我一直在尝试使用ButterKnife解决此问题,但没有成功.但是,我已经能够以这种方式工作:privateImageViewmImageView;privateTextViewTitlemTextViewN

我有一个处理从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访问导航标题元素所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1092087.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存