たとえば、2 つのシークバーを含むフラグメントがあります。1 つはレイアウト XML をロードし、もう 1 つは実行時にロードします。
public class FragmentEqualizer extends Fragment {
@Override
public void onCreate(Bundle state) {
super.onCreate(state);
setRetainInstance(true);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle b)
{
View view = inflater.inflate(R.layout.fragment_equalizer, container, false);
myLinearLayout = (LinearLayout) view.findByViewId(R.id.linearLayout);
SeekBar bar = new SeekBar(view.get.Context());
bar.setLayoutParams(layoutParams);
bar.setMax(100);
bar.setProgress(50);
myLinearLayout.addview(bar);
return view;
}
}
アプリケーションを起動して各シークバーのプログレスバーを変更し、デバイスの画面の向きを変更した後、ロードされたビューのプログレスバーの状態は同じに保たれますが、ランタイムにロードされたビューのプログレスバーの状態は次のようにデフォルトになります変更していません。
私の問題は、このsetRetainInstance がインスタンスを保持していないようです
誰か助けてくれませんか???
tks