我正在实施购物车Android应用程序,并在ActionBar上显示自定义视图,该视图描述了购物车中没有任何项目。在浏览产品和查看每个产品时(显示在另一个活动中),操作栏上会显示此信息。从视图产品活动中,用户可以单击添加到购物车。单击将通过将数字增加1来更新自定义视图。
自定义视图是:
但现在当用户按下后退按钮时,它会转到上一个活动,并且操作栏上的自定义视图显示旧视图,其中项目数较少。如何按后退按钮
更新操作栏的自定义视图我的自定义视图是:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/actionbar_cart_layout"
android:layout_width="70dp"
android:layout_height="wrap_content" >
<ImageView
android:id="@+id/actionbar_cart_image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right|center_vertical"
android:src="@drawable/ic_actionbar_cart"
android:layout_alignParentRight="true"/>
<TextView
android:id="@+id/actionbar_cart_qty"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="right|center"
android:layout_marginLeft="19dp"
android:layout_marginTop="12dp"
android:layout_alignLeft="@+id/actionbar_cart_image"
android:text="0"
android:textColor="#000000"
android:textSize="14sp"
android:textStyle="bold" />
</RelativeLayout>
我正在处理这样的添加
LayoutInflater inflator = (LayoutInflater) this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
view = inflator.inflate(R.layout.menuitem_cart, null);
getSupportActionBar().setCustomView(view);
点击添加到购物车我正在更新像这样的视图
TextView cartQry = (TextView) view.findViewById(R.id.actionbar_cart_qty);
int count = ShoppingCart.getInstance().getTotalItems();
cartQry.setText(Integer.toString(count));
我正在使用带有最低API版本的ActionBar Sherlock 11
答案 0 :(得分:0)
根据上面的评论 - 覆盖片段活动中的onResume()方法
@Override
protected void onResume() {
TextView cartQry = (TextView) view.findViewById(R.id.actionbar_cart_qty);
int count = ShoppingCart.getInstance().getTotalItems();
cartQry.setText(Integer.toString(count));
super.onResume();
}
答案 1 :(得分:0)
@Override
protected void onResume() {
invalidateOptionsMenu();
super.onResume();
}