【发布时间】:2018-10-15 18:16:20
【问题描述】:
我有这个问题,如何在我的类 Dialog_findname 中使用 MainActivity 中的函数,我必须在行中传递 main 的上下文:vardadienas = main.loadedfile(MainActivity.this);
public class Dialog_findname extends AppCompatDialogFragment {
private EditText findName;
private findnameDialogListener listener;
private List<VDienas> vardadienas = new ArrayList<>();
private Finder finder = new Finder();
private MainActivity main = new MainActivity();
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
vardadienas = main.loadedfile(MainActivity.this);
}
这是我想在其他类中调用的 MainActivity 函数:
public List<VDienas> loadedfile(Context ctxt){
FileInputStream fis = null;
try {
fis = openFileInput(FILE_NAME);
InputStreamReader isr = new InputStreamReader(fis);
BufferedReader reader = new BufferedReader(isr);
String line;
reader.readLine();
while ((line = reader.readLine()) != null){
VDienas VissGads = new VDienas();
String[] tokens = line.split(";");
VissGads.setDatums(tokens[0]);
VissGads.setMenesis(Integer.parseInt(tokens[1]));
VissGads.setDiena(Integer.parseInt(tokens[2]));
for (int i = 0; i < Integer.parseInt(tokens[3]); i++) {
VissGads.setVards(tokens[i + 4]);
}
vardadienas.add(VissGads);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}finally {
if (fis != null){
try {
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return vardadienas;
}
我试图查找类似的问题,但我仍然不明白如何:(
【问题讨论】:
标签: java android-studio main-activity