我使用的是ViewPager连同FragmentStatePagerAdapter主办三个不同的片段:
当我想Fragment1从ViewPager在FragmentActivity.
有什么问题,我该如何解决?
我正在使用Manishkpr上的教程来创建一个应用程序,你可以在其中滑动1)layoutOne:在这里你创建一个文件和2)layoutTwo:显示某个文件夹中所有创建文件的列表视图.
问题:如果您创建了一个文件,它不会立即显示在列表视图中.我发现我应该在LayoutOne.java中使用此代码:
LayoutTwo fragment = (LayoutTwo) getFragmentManager().findFragmentByTag("TESTTWO");
fragment.getAdapter().notifyDataSetChanged();
Run Code Online (Sandbox Code Playgroud)
在LayoutTwo.java中,我添加了:
private static final String TAG = "TESTTWO";
//and the function getAdapter:
public CustomArrayAdapter getAdapter() {
return adapter;
}
Run Code Online (Sandbox Code Playgroud)
但是,我得到一个nullpointer异常fragment.getAdapter().notifyDataSetChanged();.我怎么能解决这个问题,这实际上是最好的方法吗?
编辑
myList = new ArrayList<RecordedFile>();
File directory = Environment.getExternalStorageDirectory();
file = new File(directory + "/test/");
File list[] = file.listFiles();
for (int i = 0; i < list.length; i++) {
if (checkExtension(list[i].getName()) == true) {
RecordedFile q = new RecordedFile();
q.setTitle(list[i].getName());
q.setFileSize(readableFileSize(list[i].length()));
myList.add(q);
}
}
adapter = new CustomArrayAdapter(myContext, …Run Code Online (Sandbox Code Playgroud)