小编Gia*_*nis的帖子

使用JavaFX检查形状的碰撞

我正在尝试进行一些碰撞检测.对于这个测试,我使用简单的矩形Shape,并检查它们Bound,以确定它们是否发生碰撞.虽然检测不能按预期工作.我尝试过使用不同的方法移动对象(relocate,setLayoutX,Y)以及不同的绑定检查(boundsInLocal,boundsInParrent等),但我仍然无法使其工作.如您所见,检测仅适用于一个对象,即使您有三个对象,也只有一个检测到碰撞.这是一些演示问题的工作代码:

import javafx.application.Application;
import javafx.event.EventHandler;
import javafx.scene.Cursor;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.input.MouseEvent;
import javafx.scene.paint.Color;
import javafx.scene.shape.Rectangle;
import javafx.stage.Stage;

import java.util.ArrayList;


public class CollisionTester extends Application {


    private ArrayList<Rectangle> rectangleArrayList;

    public static void main(String[] args) {
        launch(args);
    }

    public void start(Stage primaryStage) {
        primaryStage.setTitle("The test");
        Group root = new Group();
        Scene scene = new Scene(root, 400, 400);

        rectangleArrayList = new ArrayList<Rectangle>();
        rectangleArrayList.add(new Rectangle(30.0, 30.0, Color.GREEN));
        rectangleArrayList.add(new Rectangle(30.0, 30.0, Color.RED));
        rectangleArrayList.add(new Rectangle(30.0, 30.0, Color.CYAN));
        for(Rectangle block : …
Run Code Online (Sandbox Code Playgroud)

javafx collision-detection javafx-2

18
推荐指数
1
解决办法
4万
查看次数

ReactNative TextInput不可见iOS

我有以下剥离渲染结果:

return (
  <View style={{backgroundColor:'red'}}>
    <TextInput value={'Hello'}/>
  </View>
);
Run Code Online (Sandbox Code Playgroud)

生成的TextInput在iOS中不可见,除非我指定高度,并且当在其容器中使用flexDirection:'row'时,我还需要指定其宽度.

这只发生在iOS上,Android似乎按预期工作.

有没有一种在没有固定大小的iOS中显示TextInput的方法?

当前依赖关系:

  "dependencies": {
    "react-native": "=0.18.1",
    "react-native-orientation": "=1.12.2",
    "react-native-vector-icons": "=1.1.0"
  },
Run Code Online (Sandbox Code Playgroud)

iOS版:

在此输入图像描述

安卓:

在此输入图像描述

像这样更改渲染:

return (
  <View style={{backgroundColor:'red'}}>
    <Text>text</Text>
    <TextInput value={'Hello'}/>
  </View>
);
Run Code Online (Sandbox Code Playgroud)

有以下结果:

iOS版:

在此输入图像描述

安卓:

在此输入图像描述

ios react-native

18
推荐指数
1
解决办法
1万
查看次数

给循环命名

在这个论坛中浏览问题和答案的过程中,我发现一段代码的名字被赋予了循环,以便将它们用于休息.喜欢

nameofloop:
    for(){
        for(){
             if(){ break nameofloop;}
        }
    }
Run Code Online (Sandbox Code Playgroud)

我是编程的新手,之前我还没有看到过.我的问题是命名循环的其他用途是什么?

java loops

15
推荐指数
4
解决办法
3万
查看次数

这是条件表达式的有效使用吗?

我想弄清楚这样做的最佳方法是:

resource['contents'][media_type] = []
resource['contents'][media_type].append(row[0].toPython()) if row[0] is not None else None
resource['contents'][media_type].append(row[2].toPython()) if row[2] is not None else None
Run Code Online (Sandbox Code Playgroud)

我认为代码很简单; 如果行有值,则将它们添加到列表中.这种方法是否合适?还有其他方法会更好吗?该toPython方法将返回包含对象的字符串描述.

python python-3.x

10
推荐指数
2
解决办法
1067
查看次数

SwingWorker和Executor之间的差异

我正在使用SwingWorker在我正在制作的应用程序上执行一些重载任务.虽然今天我遇到了Executor类和这个例子:

Executors.newCachedThreadPool().execute(new Runnable() {
                    public void run() {
                        someTask();     
  });
Run Code Online (Sandbox Code Playgroud)

有人可以解释为什么会使用SwingWorker而不是上面的例子吗?这是我目前使用SwingWorker的方式:

SwingWorker worker = new SwingWorker() {            
protected Object doInBackground() {
    someTask();
return null;
}
};
worker.execute();
Run Code Online (Sandbox Code Playgroud)

java swing multithreading

8
推荐指数
2
解决办法
3276
查看次数

文件renameTo不起作用

我试图添加一个扩展名由a选择的文件的名称,JFileChooser虽然我无法让它工作.

这是代码:

final JFileChooser fc = new JFileChooser();
        fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
        int returnVal = fc.showSaveDialog(null);
        if (returnVal == JFileChooser.APPROVE_OPTION) {
            File f = fc.getSelectedFile();
            String name =f.getAbsoluteFile()+".txt";
            f.renameTo(new File(name));
            FileWriter fstream;
            try {
                fstream = new FileWriter(f);
                BufferedWriter out = new BufferedWriter(fstream);
                out.write("test one");
                out.close();
            } catch (IOException ex) {
                Logger.getLogger(AppCore.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚为什么这不起作用.我也尝试使用getPath()和getCanonicalPath(),但结果是一样的.该文件是在所选目录中创建的,但没有".txt"扩展名.

java jfilechooser

8
推荐指数
1
解决办法
3万
查看次数

要列出的 Pandas 列名称 - 正确的方法

我找不到任何关于以下三种获取列名称列表的方法之一是否优于其他方法的资源。第一个也是最简单的,似乎适用于我当前的示例。我有什么理由不应该使用它吗?

>>> import pandas as pd
>>> import numpy as np
>>> df = pd.DataFrame(np.random.rand(5,3))
>>> df.columns
RangeIndex(start=0, stop=3, step=1)



>>> list(df.columns)
[0, 1, 2]
>>> df.columns.get_values().tolist()
[0, 1, 2]
>>> list(df.columns.get_values())
[0, 1, 2]
Run Code Online (Sandbox Code Playgroud)

更新

性能 - 相关答案在这里:/sf/answers/1906572391/

python dataframe pandas

8
推荐指数
1
解决办法
1万
查看次数

平台默认字符编码如何影响跨平台性能

我已经读过使用平台默认字符编码的坏主意,例如在阅读文本文件并将文本导入数组等时.您能否解释一下这可能会影响跨平台性能,以及如何解决这个问题?是否存在应该用于跨平台应用程序的编码?谢谢

java performance character-encoding

7
推荐指数
1
解决办法
6032
查看次数

使用扫描仪获取用户输入

我想让扫描仪在循环中接收输入.一旦用户想要完成,他就可以退出这个循环.我尝试了很多不同的方法,但总有一些问题.这是代码:

private void inputEntries() {
    Scanner sc = new Scanner(System.in);
    System.out.println("Continue?[Y/N]");
    while (sc.hasNext() && (sc.nextLine().equalsIgnoreCase("y"))) {//change here
        System.out.println("Enter first name");
        String name = sc.nextLine();
        System.out.println("Enter surname");
        String surname = sc.nextLine();
        System.out.println("Enter number");
        int number = sc.nextInt();
        Student student = new Student(name, surname, number);
        students.add(student);
        try {
            addToFile(student);
        } catch (Exception ex) {
            Logger.getLogger(TextReader.class.getName()).log(Level.SEVERE, null, ex);
        }
        System.out.println("Continue?[Y/N]");
    }
}
Run Code Online (Sandbox Code Playgroud)

上面代码的问题,也发生在我尝试的不同方法上,当用户输入Y时,Scanner将跳过第一个名字输入,并跳转到姓氏.如果用户键入N,则循环正确停止.有人可以解释这种情况发生的原因,以及如何克服使用Scanner类?

ps:执行类似的操作while(sc.nextLine().equals("Y"))会导致循环在首次运行循环后从用户输入之前终止.

java java.util.scanner

7
推荐指数
1
解决办法
7万
查看次数

ReactNative ListView不一致的分隔线

在Android 4.4上,ListView分隔线的厚度不一致,有些则不渲染.我无法看到这是一个代码问题,这就是我渲染它们的方式:

     separator: {
        height: 1,
        backgroundColor: 'grey',
      }
      ...
      <ListView
      renderSeparator={(sectionID, rowID) =>
        <View key={`${sectionID}-${rowID}`} style={styles.separator} />
      }
      .../>
Run Code Online (Sandbox Code Playgroud)

以下是带有此问题的View的屏幕截图:

在此输入图像描述

在iOS或Android 6上不会发生此问题.

以前有人有这个问题吗?

更新

我做了一个测试,这不是Android4的问题.在Nexus One设备上运行时,它会在所有API版本上发生(在android模拟器中)

react-native react-native-listview react-native-android

7
推荐指数
2
解决办法
6224
查看次数