我有一個Activity
其中有Toolbars
。當我移動到Fragment
A時,Toolbar
需要被專門爲Fragment
A.Android - 何時從片段調用Activity的方法
Fragment
A含有其他4 Fragments
爲A是一個FragmentPager
改變。
我打電話的Activity
類似方法:
((NewsfeedActivity)getActivity()).changeTitleBesideIcon("Purchases");
((NewsfeedActivity)getActivity()).changeIcon(getResources().getDrawable(R.drawable.purchase));
((NewsfeedActivity)getActivity()).changeBackground(getResources().getColor(R.color.purpleC));
((NewsfeedActivity)getActivity()).hideToolbarBottomMarketplace();
不知何故,圖標不會得到改變,而title卻,用色..我甚至設置方法setVisibility(View.VISIBLE);
上沿icon ..
是否有一種特定的狀態需要調用這種方法?或者我只是做錯了?
更新
這是我changeIcon
方法
public void changeIcon(Drawable imageDrawable){
toolbarImage.setVisibility(View.GONE);
toolbarIcon.setVisibility(View.VISIBLE);
toolbarIcon.setImageDrawable(imageDrawable);
}
toolbarImage是一個位於Toolbar
的ImageView
這是怎麼回事:
<Toolbar>
<RelativeLayout>
<ImageView> //Toolbar Image
<ImageView>// Toolbar Icon
</RelativeLayout>
</Toolbar>
而且我調用中的方法onCreateView()
..
從來沒有聽說過['Activity'] http://developer.android.com/reference/android/app/Activity.html這樣的方法:changeIcon,changeBackground。 ..你確定你的代碼? –
使用片段的onAttach方法 –
@ TungD.Nguyen這是因爲這些方法是開發人員爲自定義使用而創建的。在這種情況下,我是創建它的人之一,是否有更好的解決方案來更改'Activity上的任何屬性'從'碎片'? @cricket,現在就做吧 –