我正在使用最新的日食。我的方法在结束之前或return
语句之前是如何关闭的?问题不是随机的,它只在某些线路上发射,无论如何听起来对我来说是不可能的。编译错误?我真的不知道。谷歌搜索我一无所获。
default: {
ColumnSelector.showMovieSelector(list, frame);
break;
}
我的代码只展示了自定义JoptionPane.showOptionDialogue
:
public static int showMovieSelector(List<MovieDb> list,Component component) {
JList<String> swinglist = new JList<>();
String[] array = new String[list.size()];
for (int i = 0; i < array.length; i++) {
array[i] = list.get(i).getTitle();
}
swinglist.setListData(array);
swinglist.setSelectedIndex(0);
ImageIcon img = new ImageIcon(Toolkit.getDefaultToolkit().getImage(list.get(0).getImages().get(0).getFilePath()));
JLabel l1=new JLabel(img);
JSplitPane pane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, swinglist, l1);
JOptionPane.showOptionDialog(component, pane, "", JOptionPane.OK_OPTION, JOptionPane.PLAIN_MESSAGE, null, null, null);
return swinglist.getSelectedIndex();
}
Component component
是我自定义的JFrame,List
是TheMovieDB API的一个实现。
答案 0 :(得分:1)
如果您未在方法结束前的任何地方使用退货,请检查您是否会收到异常,这可能导致您的方法突然返回。
答案 1 :(得分:0)
半解决。它出来是getImages()
中的一种错误。如果我用try-catch包围它,它会引发异常,即使源代码SEEMS不应该这样做。我会调查。