我已經使用android web上的代碼示例創建了選項卡視圖。 http://developer.android.com/training/implementing-navigation/lateral.htmlAndroid片段活動初始化變量爲空值
我已經添加了此代碼來調用將設置標題的setTitle方法。
mViewPager.addOnPageChangeListener(
new ViewPager.SimpleOnPageChangeListener() {
@Override
public void onPageSelected(int position) {
actionBar.setSelectedNavigationItem(position);
FragmentInterface f = (FragmentInterface) mSectionsPagerAdapter
.getItem(position);
f.setTitle();
}
});
在我的片段類,我已經定義爲的setTitle
@Override
public void setTitle() {
System.out.println("Title " + cellMain);
if (cellMain != null) {
getActivity().getActionBar()
.setTitle(cellMain.cellData.getIPWithPort());
}
}
,我也有一個按鈕,它的作用:
public void connect(View view) {
System.out.println("Connect " + cellMain);
if (cellMain == null) {
cellMain = CellMain.createAndroid(this,
getActivity().getFilesDir().toString());
getActivity().getActionBar()
.setTitle(cellMain.cellData.getIPWithPort());
}
首先我點擊它調用連接按鈕, 它打印出「Connect null」,因爲它沒有被初始化。
再次按下按鈕會打印出「Connect cell.CellMain @ ....」。
現在我通過選擇另一個選項卡並切換回相同的選項卡來更改視圖。
的setTitle()方法打印出「標題空」這是不期望作爲cellMain被初始化。按下按鈕仍然打印出「連接cell.CellMain @ ......」
爲什麼我的方法的setTitle給出了我的變量一個空值?
我已經只有2頁雖然。我已經厭倦了將pagelimit設置爲2.它仍然返回null。我厭倦了重載onPause方法,但它永遠不會調用一次。 – Tim