- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我使用下面的代码来设置轨迹球的灵敏度
public class Main extends UiApplication {
public static void main(String[] args) {
Main theApp = new Main();
theApp.enterEventDispatcher();
}
public Main() {
if (Trackball.isSupported()) {
Trackball.setFilter(Trackball.FILTER_ACCELERATION);
Trackball.setSensitivityX(20);
Trackball.setSensitivityY(20);
}
pushScreen(new LoginScreen());
}
}
这是使用的屏幕:
public class LoginScreen extends MainScreen {
public LoginScreen() {
super(MainScreen.NO_VERTICAL_SCROLL | MainScreen.NO_VERTICAL_SCROLLBAR);
add(...) // SOME COMPONENTS ARE ADDED HERE
}
}
当我在 navigationMovement 中使用
,它返回“2147483647”,同时如果我在 Trackball.getSensitivityX()
和 Trackball.getSensitivityY()
检查 LoginScreen
中轨迹球的灵敏度时Main
中立即设置它后检查它,它返回“20”!
所以我将设置 block 移动到 LoginScreen
本身,如下所示:
public class LoginScreen extends MainScreen {
public LoginScreen() {
super(MainScreen.NO_VERTICAL_SCROLL | MainScreen.NO_VERTICAL_SCROLLBAR);
if (Trackball.isSupported()) {
Trackball.setFilter(Trackball.FILTER_ACCELERATION);
Trackball.setSensitivityX(20);
Trackball.setSensitivityY(20);
}
add(...) // SOME COMPONENTS ARE ADDED HERE
}
}
它还通过在 navigationMovement
中使用 Trackball.getSensitivityX()
和 Trackball.getSensitivityY()
返回“2147483647”。
最后,根据一些网络搜索,我将条件移动到 navigationMovement
中,如下所示:
protected boolean navigationMovement(int dx, int dy, int status, int time) {
if (Trackball.isSupported()) {
Trackball.setFilter(Trackball.FILTER_ACCELERATION);
Trackball.setSensitivityX(20);
Trackball.setSensitivityY(20);
}
return super.navigationMovement(dx, dy, status, time);
}
问题变成导航运动从索引 0 处的字段跳到索引 2 再到索引 4 ... 等等,每次移动都绕过字段!
如何正确设置轨迹球对屏幕的灵敏度?
最佳答案
我也无法理解这种 API 设计,根据我的经验,这些方法不起作用。作为解决方法,您可以在 Screen
类中调用以下方法:
Screen.setTrackballSensitivityXOffset
Screen.setTrackballSensitivityYOffset
Screen.setTrackballFilter
使用前两种方法,您可以将作为参数传递的偏移量添加到当前用户灵敏度。值在 [-100, 100] 范围内,特殊值 Integer.MAX_VALUE
也允许将值设置为“unset”。 (不要问我 unset 是什么意思)。
现在到了 hacky 部分。假设 100 是灵敏度的最大值,如果我们想将它设置为 100,我们首先需要获得期望值和实际值之间的差值。然后将灵敏度偏移设置到屏幕。为了简洁起见,我没有检查值是否在范围内:
int desiredSensitivityX = 100; //your value here
int offsetX = desiredSensitivityX - Trackball.getSensitivityXForSystem(); // make sure offset is not out of range
this.setTrackballSensitivityXOffset(offsetX); //here "this" is your screen
您可以将该代码放在屏幕构造函数中。它仅适用于该屏幕。一旦离开该屏幕,灵敏度(实际上是偏移量)就会恢复正常。
最后,最后一个方法,也是在屏幕类中,允许您仅为该屏幕设置轨迹球过滤器。所以你可以把这一行放在你的构造函数中:
this.setTrackballFilter(Trackball.FILTER_ACCELERATION);
离开屏幕后应该会恢复正常。
希望对您有所帮助。
关于blackberry - 在黑莓中,设置 Trackball Sensitivity 没有效果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12566725/
我正在使用 Gunicorn 为 Django 应用程序提供服务,它工作正常,直到我将其超时时间从 30 秒更改为 900000 秒,我不得不这样做,因为我有一个用例需要上传和处理一个巨大的文件(过程
我有一个带有非常基本的管道的Jenkinsfile,它可以旋转docker容器: pipeline { agent { dockerfile { args '-u root' } } stag
在学习 MEAN 堆栈的过程中,我遇到了一个问题。每当我尝试使用 Passport 验证方法时,它都不会返回任何响应。我总是收到“localhost没有发送任何数据。ERR_EMPTY_RESPONS
在当今的大多数企业堆栈中,数据库是我们存储所有秘密的地方。它是安全屋,是待命室,也是用于存储可能非常私密或极具价值的物品的集散地。对于依赖它的数据库管理员、程序员和DevOps团队来说,保护它免受所
是否可以创建像图片上那样的边框?只需使用 css 边框属性。最终结果将是没 Angular 盒子。我不想添加额外的 html 元素。我只想为每个 li 元素添加 css 边框信息。 假设这是一个 ul
我是一名优秀的程序员,十分优秀!