android fragment 更新ui,如何更新Fragment UI中的数据?

public static class DummySectionFragment extends Fragment {

public static final String ARG_SECTION_NUMBER = "section_number";

private GridView events;

public DummySectionFragment() {}

@Override

public View onCreateView(LayoutInflater inflater, ViewGroup container,

Bundle savedInstanceState) {

Bundle args = getArguments();

switch (args.getInt(ARG_SECTION_NUMBER)) {

case 1 : return initializeCalendarScreen(inflater);

case 2 : return inflater.inflate(R.layout.todo_lists_layout, null);

}

return null;

}

public void updateGridView() {

int daysInCurrentMonth=(MainActivity.month==1) ? daysInFebruary : COUNT_OF_DAYS_IN_MONTH[MainActivity.month];

int daysInPrevMonth=(MainActivity.month-1==1) ? daysInFebruary : COUNT_OF_DAYS_IN_MONTH[MainActivity.month-1];

int daysInNextMonth=(MainActivity.month+1==1) ? daysInFebruary : COUNT_OF_DAYS_IN_MONTH[MainActivity.month+1];

Calendar calendar=Calendar.getInstance();

calendar.set(MainActivity.year, MainActivity.month, 1);

int startDayOfWeek=calendar.get(Calendar.DAY_OF_WEEK);

List dates=new ArrayList();

for (int i=0; i

dates.add(daysInPrevMonth-i);

}

for (int i=0; i

dates.add(i+1);

}

ArrayAdapter adapter=new ArrayAdapter(getActivity(), R.layout.grid_view_cell_layout, R.id.textViewGridCell, dates);

events.setAdapter(adapter);

}

private View initializeCalendarScreen(LayoutInflater inflater) {

View layout=inflater.inflate(R.layout.calendar_layout, null);

events=(GridView)layout.findViewById(R.id.gridViewCalendar);

updateGridView();

return layout;

}

}

它的工作好(我用它FragmentPagerAdapter)。我使用Activity中的方法updateGridView()来更新GridView中的值。但是,如果我这样做,我会得到NullPointerException,因为ArrayAdapter的getActivity()返回null。请告诉我,如何从Activity更新Fragment UI?谢谢

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值