【发布时间】:2015-09-20 14:06:36
【问题描述】:
我有问题。如何重置视图或适配器中的片段?
我要查看点击->数据更改->查看完成->片段重置
它正在做:
public class CustomView extends View{
@Override
protected void onDraw(Canvas canvas) {
builder.setSingleChoiceItems(items, -1, new DialogInterface.OnClickListener() {
switch (which) {
case 1: {
@Override
public void onClick(DialogInterface dialog, int which) {
Fragment fragment = new Z_Hello();
FragmentManager manager = fragment.getFragmentManager();
FragmentTransaction ft = manager.beginTransaction();
ft.replace(R.id.pager, new Z_Hello());
ft.commit();
}
}
}
也这样做了,但都出错了
Fragment frg = new Z_Hello();
frg = frg.getFragmentManager().findFragmentById(R.id.pager);
final FragmentTransaction ft = frg.getFragmentManager().beginTransaction();
ft.detach(frg); ft.attach(frg); ft.commit();
【问题讨论】:
-
不要在 onDraw 中做任何事情!顾名思义,它仅用于绘图。它可能每秒被调用多次。我很确定您不需要每秒多次创建匿名类(侦听器)的新实例。在其他地方做一次。
标签: android android-fragments reset