我需要用
fileChooser.getSelectedFile()
Run Code Online (Sandbox Code Playgroud)
但是它始终返回语言修改路径,因为某些目录在osX中被翻译.例如文件夹"/ Downloads"被翻译成我的系统语言"/Stiahnuté",但真正的路径是"/ Downloads"
返回:
/Users/John/Stiahnuté
Run Code Online (Sandbox Code Playgroud)
期望
/Users/John/Downloads
Run Code Online (Sandbox Code Playgroud)
如果我选择一些子目录,则fileChooser.getSelectedFile()将再次返回正确的路径.它看起来总是只翻译路径中的最后一个目录
/Users/John/Downloads/subDirectory
Run Code Online (Sandbox Code Playgroud)
码:
saveButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
JFileChooser fileChooser = new JFileChooser();
fileChooser.setFileFilter(new FolderFilter());
fileChooser
.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
if (fileChooser.showSaveDialog(null) == JFileChooser.APPROVE_OPTION) {
File selectedFile = fileChooser.getSelectedFile();
System.out.println("save path: "
+ selectedFile.getPath());
doSomething(selectedFile);
}
}
});
Run Code Online (Sandbox Code Playgroud)
更新:
我做了一点解决方法,但这不是完美的解决方案.但它对我有用.
JFileChooser fileChooser = new JFileChooser();
FileNameExtensionFilter filter = new FileNameExtensionFilter(
"Directories", "dir");
fileChooser.setFileFilter(filter);
if (fileChooser.showSaveDialog(null) == JFileChooser.APPROVE_OPTION) {
File selectedFile = fileChooser.getSelectedFile();
File newDir = new File(selectedFile.getPath());
if (!newDir.exists()) { …Run Code Online (Sandbox Code Playgroud) 我想在ScrollView中有2个布局.第一个布局应该在全屏幕上,第二个布局应该在第一个布局下面.活动开始时,无法看到第二个布局.滚动屏幕后可以看到第二种布局.请查看我的图片以便更好地理解.

我有一个图像切换器的问题,以适应屏幕.请检查PIC 1. 屏幕边缘仍有白色可用空间.我想在PIC 2中实现效果.没有空的空间和imageswitcher完美适合屏幕.我可以使用imageView做这个效果:
android:scaleType="centerCrop"
Run Code Online (Sandbox Code Playgroud)
但它看起来centerCrop不适用于imageSwitcher.感谢您知道如何解决它.
更新:
这是我的XML代码:我在那里添加了 android:scaleType ="fitXY",但它没有帮助.
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ImageSwitcher
android:id="@+id/imageswitcher"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="fitXY"
android:src="@drawable/it_intro1" >
</ImageSwitcher>
Run Code Online (Sandbox Code Playgroud)

解决方案: 最后它帮助添加了这行代码:imageView.setScaleType(ImageView.ScaleType.FIT_XY);
public View makeView() {
ImageView imageView = new ImageView(Introduction.this);
imageView.setScaleType(ImageView.ScaleType.FIT_XY);
LayoutParams params = new ImageSwitcher.LayoutParams(
LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);
imageView.setLayoutParams(params);
return imageView;
}
Run Code Online (Sandbox Code Playgroud)