【发布时间】:2017-08-10 23:04:24
【问题描述】:
我们从 someID 的 onCreate 方法中获取值。当 onCreateView 方法第一次运行时,一切都很好。但是,在第二次运行时(在 1000 间隔之后),someID 值为 NULL。我们如何确保这个 someID 值是粘性的?请记住,该线程存在于 Fragment 中
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
someID = getArguments().getString(SOME_ID_KEY);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState){
View v = inflater.inflate(R.layout.fragment_game, container, false);
Toast.makeText(getActivity(), someID, Toast.LENGTH_SHORT).show();
handler.postDelayed(new Runnable() {
@Override
public void run() {
System.out.print(someID); // works on 1st time but not any other future runs of the 1k interval
handler.postDelayed(this, 1000);
}
}, 1000);
【问题讨论】:
标签: java android multithreading android-activity fragment