android– 片段在按下后退按钮时不刷新

android– 片段在按下后退按钮时不刷新,第1张

概述当按下后退按钮时,如何刷新片段的视图?我已经在片段的onResume方法中尝试了这个但是它不起作用.好的,这是代码布局看起来像:<RelativeLayoutxmlns:android="http://schemas.android.com/apkes/android"xmlns:tools="http://schemas.android.comools"android:layout_width

当按下后退按钮时,如何刷新片段的视图?

我已经在片段的onResume方法中尝试了这个但是它不起作用.

好的,这是代码

布局看起来像:

<relativeLayout xmlns:androID="http://schemas.androID.com/apk/res/androID"xmlns:tools="http://schemas.androID.com/tools"androID:layout_wIDth="match_parent"androID:layout_height="match_parent"androID:orIEntation="horizontal"androID:background="@color/mainscreen_bg"><fragment    androID:ID="@+ID/topbar"    androID:name="de.app.applib.topbarFragment"    androID:layout_wIDth="match_parent"    androID:layout_height="@dimen/topbar_height"    androID:layout_alignParenttop="true"    tools:layout="@layout/fragment_topbar" /> <fragment    androID:ID="@+ID/position_List"    androID:name="de.app.applib.CriteriaListFragment"    androID:layout_wIDth="match_parent"    androID:layout_height="match_parent"    androID:layout_alignParentBottom="true"    androID:layout_alignParentleft="true"    androID:layout_alignParentRight="true"    androID:layout_below="@ID/topbar"    androID:tag="CriteriaList"    tools:layout="@layout/fragment_criteriaList" />

topbarFragment具有以下布局:

<relativeLayout xmlns:androID="http://schemas.androID.com/apk/res/androID"androID:layout_wIDth="match_parent"androID:layout_height="match_parent"androID:background="@drawable/topbar_bg" ><ImageVIEw androID:ID="@+ID/topbar_home"    androID:layout_height="match_parent"    androID:layout_wIDth="wrap_content"    androID:layout_alignParentleft="true"    androID:gravity="center_vertical"    androID:src="@drawable/ic_ab_back_holo_light"    androID:visibility="invisible"    androID:padding="0dp"    androID:contentDescription="@string/none"    androID:layout_margin="0dp"/><ImageVIEw  androID:ID="@+ID/topbar_logo"    androID:src="@drawable/actionbar_logo"    androID:layout_height="30dp"    androID:layout_wIDth="120dp"    androID:layout_centerVertical="true"    androID:padding="0dp"    androID:layout_margin="0dp"    androID:contentDescription="@string/none"    androID:layout_toRightOf="@ID/topbar_home"/><Togglebutton    androID:ID="@+ID/topbar_btn_push_abo"    androID:layout_wIDth="40dp"    androID:layout_height="match_parent"    androID:layout_alignBottom="@+ID/topbar_btn_info"    androID:layout_toleftOf="@ID/topbar_btn_info"    androID:background="@drawable/topbar_btn_push_bg"    androID:paddingtop="@dimen/padding_topbar_btn_push"    androID:textOff=""    androID:textOn=""    androID:textSize="12sp" />

在片段的onCreateVIEw()中,我设置了togglebutton的textOn和textOff值.

此片段包含在所有活动中.

现在,我想在用户按下后退按钮时更新togglebutton的文本.
我在片段的onResume()方法中设置了新文本.调用此方法但旧文本显示在活动中,而不是新更新的文本.

 @OverrIDepublic VIEw onCreateVIEw(LayoutInflater inflater, VIEwGroup container,        Bundle savedInstanceState) {    Log.d(TAG,"onCreateVIEw called");    VIEw v = inflater.inflate(ResourceUtils.getCustomizableLayoutID(getActivity(), "fragment_topbar"), container, false);    subscrbutton = (Togglebutton) v.findVIEwByID(R.ID.topbar_btn_push_abo);    setCountOfNewAdds();    private voID setCountOfNewAdds() {    int countOfNewAds = ((App)getActivity().getApplication()).getCountOfNewAds();    subscrbutton.setTextOff(countOfNewAds>0?""+countOfNewAds:"");    subscrbutton.setTextOn(countOfNewAds>0?""+countOfNewAds:"");    subscrbutton.invalIDate();}    @OverrIDepublic voID onResume() {    super.onResume();    setCountOfNewAdds();}

解决方法:

如果你的片段调用replace(),而不是add()方法切换到另一个片段(SecondFragment),当按下SecondFragment中的后退按钮时,你的片段将再次调用onCreateVIEw()方法

总结

以上是内存溢出为你收集整理的android – 片段在按下后退按钮时不刷新全部内容,希望文章能够帮你解决android – 片段在按下后退按钮时不刷新所遇到的程序开发问题。

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

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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存