小编use*_*572的帖子

glGenTexture的参数?

这听起来很简单,但我查看了各种网站,它只给了我两个参数:

void glGenTextures(GLsizei n, GLuint * textures)  
Run Code Online (Sandbox Code Playgroud)

..解释.

但是当使用OpenGL ES和android时,该方法不存在,我也看到了多个网站,源代码和教程使用这个方法有三个参数,这对我来说不会给我一个编译器错误:

gl.glGenTextures(amountOfTexturesToMake, pointerToArray, 0);  
Run Code Online (Sandbox Code Playgroud)

那零是什么?第三个参数是什么?即使很难看到各种各样的人使用它,我也找不到它的解释.

java parameters android opengl-es

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

ImageButton似乎没有检测到点击次数(Scene2d.ui)

当试图在舞台上放置一个简单的ImageButton时,它似乎没有检测到点击.

ImageButton btnStart = new ImageButton(ButtonArt.UP, ButtonArt.DOWN));

// btnStart.setClickListener(new ClickListener() {
//          @Override
//          public void click(Actor a, float arg1, float arg2) {
//             a.visible = false;
//          }
//       });

stage.addActor(btnStart);
Run Code Online (Sandbox Code Playgroud)

ButtonArt.UP和ButtonArt.DOWN是每个州的TextureRegions.现在,当我点击按钮时,它不会改变状态!我也尝试了上面的ClickListener(用于测试),但它似乎也没有用.

在我的render方法中,我只调用stage.act()和stage.render().我也尝试在我的渲染方法中使用SpriteBatch绘制TextureRegions,它们实际上是不同的纹理.

难道我做错了什么?

java user-interface stage libgdx

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

我可以调用超级构造函数并在java中传递类名吗?

我有超类Vehicle,有它的子类PlaneCar.车辆从具有final string name;场的类延伸,该场只能从构造器设置.

我想将此字段设置为类的名称,因此Car的名称将为Car,Plane将为Plane,Vehicle将为Vehicle.我首先想到的是:

public Vehicle() {
    super(getClass().getSimpleName()); //returns Car, Plane or Vehicle (Subclass' name)
}
Run Code Online (Sandbox Code Playgroud)

但这给了我错误:Cannot refer to an instance method while explicitly invoking a constructor.

如何将name字段设置为类名,而不是手动将其作为String传递?

java inheritance class

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

JComponents的二维网格(Swing)

我正在尝试制作JTextFields的2D网格来表示水平贴图.为了初始化TextFields的2D数组,我来了以下内容:

fields = new TextField[level.rows][level.columns];
TextField field;
    for (int r = 0; r < level.rows; r++) {
        for (int c = 0; c < level.columns; c++) {
            field = new TextField(level.bricks[r][c].type);
            fields[r][c] = field;
        }  
Run Code Online (Sandbox Code Playgroud)

现在我必须将它们添加到JFrame中,但是它们需要排成一行,以便每个row都在另一列之下.我确实找到了GridLayout,但是我对AWT/Swing不是很有经验,但仍然不知道如何实现所需的布局.我期待那里有某种方法gLayout.add(JComponent,row,column).

java swing jcomponent grid-layout multidimensional-array

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

我的游戏需要多线程吗?

我试图用Android上的opengl进行一个简单的突破游戏,我无法决定是否必须使用单独的线程来处理某些游戏逻辑,比如更新游戏和碰撞检测.我做了一个简单的原型:在自己的线程中绘制和更新彼此的并行.它带来的问题比我想象的要多,所以我想:

我需要多个线程吗?

例如,由于突破游戏,有6X5网格块,并且每个块需要测试
球是否触摸这块砖?而且每秒约30次.如果我把这段代码放在我的主要绘图循环中:OnDrawFrame(GL10)我恐怕会花费很多渲染时间.
那么我可以回到单线程游戏吗?(因为Android设备与..pc相比并不那么强大.

multithreading android opengl-es

2
推荐指数
1
解决办法
1722
查看次数

SQLite IllegalStateException:我在哪里关闭数据库?

在Android中创建和填充我的新SQLiteDatabase时,我遇到两个相互矛盾的异常.总之我的代码:

SQLiteOpenHelper扩展类:

public void onCreate(SQLiteDatabase db) {
    db.execSQL(DB_TABLE_CREATE);
    loadLevelData(db); //puts data in the database
    //db.close(); <<< ?
}
Run Code Online (Sandbox Code Playgroud)

在我的activity类中,我实例化了这个类(在onCreate()中),并调用getWritableDatabase():

dbHelper = new DbOpenHelper(getApplicationContext());
database = dbHelper.getWritableDatabase();  
Run Code Online (Sandbox Code Playgroud)

现在如果我db.close()在填充数据库之后没有调用,就像上面那样,我得到了

android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the   cursor or database object that was opened here  
Run Code Online (Sandbox Code Playgroud)

但是,如果我关闭它,我会得到以下异常:

java.lang.IllegalStateException: database not open
Run Code Online (Sandbox Code Playgroud)

在getWritableDatabase()上.

这真让我困惑,所以有人可以帮我解决错误吗?

database sqlite android exception illegalstateexception

2
推荐指数
1
解决办法
4774
查看次数

SQLite Android获得不同的值

我有一个SQLite数据库用于我的游戏关卡,数据来自Name, Campaign, Number, Score.在构建我的LevelList(带有自定义视图的ListView)时,我想从列表中选择一个Campaign,您可以在其中查看旁边的高分,这是通过在数据库中添加此广告系列级别的所有分数获得的.

数据库中的每个级别都有一个与其相关的活动字段.但要制作广告系列列表,我只希望获得不同的(独特的)广告系列.有没有一种从数据库中获取这些内容的好方法?
获得这些的最佳方法是什么,并获得总分?

数据库的一部分以及我将如何制作我的levelpicker listview:
在此输入图像描述

sqlite android listview

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

为什么我不应该使用像素作为Box2D的单位?

在手册中它说我应该使用小单位(0.1-10米).不鼓励使用像素作为度量单位.但是为什么Box2D能够更好地运行,并且比我使用小型单元时具有更好的模拟效果?

simulation physics box2d

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

Box2D重力影响不同的质量

如果我给身体不同的密度/质量,它们仍然以相同的速度下降.我知道在没有空气阻力的地方,质量不会影响下落速度.

但是,我如何逻辑制作,比方说气球和砖块,以不同的速度下降?我能想到的最接近的方法是使用setGravityScale来设置这一切..

java android physics box2d libgdx

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

没有强制关闭的Android例外

我可能会遗漏一些东西,但每当在Android(或java)中抛出异常时,我的应用程序总是强制关闭,整个程序终止.但是当数据库查询出现问题时,我只想返回主菜单.

try {
        database.query(params);

} catch (Exception e) {
        Log.e("Game", "Failed Loading Level", e);
        returnToMenu();
    }
Run Code Online (Sandbox Code Playgroud)

}

这例如强制关闭我的程序,我只想继续!

java android exception-handling exception

0
推荐指数
1
解决办法
3272
查看次数