小编Vic*_*ent的帖子

使用水平和垂直滚动创建RecyclerView

在过去的几周里,我一直在学习如何使用RecyclerView.我需要实现一个水平列表,即通过以横向模式转动设备,如下所示:

在此输入图像描述

我发现这个(如何创建的水平位移的最佳解决方案RecyclerView,在这里),却遇到了另一个问题.该项目RecyclerView大于设备的高度(横向,水平),因此我需要同时创建垂直和水平位移.

我查看了LayoutManager该类的Android Developer方法,但我的技能不够高,无法理解大多数方法.我也尝试将所有内容RecyclerView垂直放在另一个内部RecyclerView,但是我收到错误:

IllegalStateException:RecyclerView没有LayoutManager

为了重新考虑这一点,我删除<View ... />了XML文件中的所有元素,但这并没有给出任何结果.

澄清我的问题:是否可以让我的布局水平和垂直滚动,如果你能解释我将如何欣赏它.

android scroll android-layout android-studio android-recyclerview

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

在Unity中获取许多游戏对象之间的中心点

我创建了一个游戏,您可以在其中以相同的形式同时控制 X 个角色,并且他们可以随时死亡。我的问题是当我希望游戏相机包含所有这些游戏对象时。

我认为一个不错的选择是计算场景中游戏对象之间的中心点,并使相机在一定距离处跟随该点。

我已经有了相机代码,但我仍然需要知道如何获得中心点或其他方式。此外,相机不会线性地跟随任何轴(X、Y、Z),因为它的放置方式是视图是等距的(游戏是 3D 的)。

最后一个重要的事实是,游戏中运行的所有游戏对象(活着的)都存储在 a 中public static List <GameObject>,以便能够随时访问这些游戏对象的组件。此外,如果角色(游戏对象)死亡或出生,则列表会毫无问题地更新。

我给你留下了一个带有三种不同情况的图形示例,分别是黑点、场景中的角色(游戏对象)和红点、我想找到的中心点(矢量)。

在此处输入图片说明

另外,我留下了相机代码,以便您可以测试是否有任何解决方案:

public class Camera_Movement : MonoBehaviour {

    Vector3 newPos;
    public static List<GameObject> playersInGame = new List<GameObject>();

    void Update() {

        // Get Central Vector

        // Replace playersInGame[0].transform.position with central vector
        //newPos = Vector3.Lerp(gameObject.transform.position, "central vector", Time.deltaTime);

        newPos = Vector3.Lerp(gameObject.transform.position, playersInGame[0].transform.position, Time.deltaTime);
        gameObject.transform.position = new Vector3(newPos.x, newPos.y, newPos.z);

    }
}
Run Code Online (Sandbox Code Playgroud)

非常感谢您提前!

c# unity-game-engine

4
推荐指数
2
解决办法
7363
查看次数

尝试在null对象引用上调用虚方法'android.database.Cursor android.database.sqlite.SQLiteDatabase.query

我有一个活动,我试图根据某些条件获取数据列表.这个chooseome()函数位于SQLiteOpenHelper子类中.

MyDBHandler dbhelper = new MyDBHandler(this);
Cursor cursor;
cursor = dbhelper.selectSome(value);
Run Code Online (Sandbox Code Playgroud)

在类MyDBHelper.java中

public Cursor selectSome(String arg)

{

    String columns[]=new String[]{"_id","_hotelname","_city","_imageSrc","_rent","_address"};
    String selarg[]={arg};
    Cursor c=db.query(TABLE_NAME,columns,"city = ?",selarg, null,null,null);
   return c;
}
Run Code Online (Sandbox Code Playgroud)

我收到此错误请帮助.

09-01 18:08:00.394 E/AndroidRuntime( 6246): FATAL EXCEPTION: main

09-01 18:08:00.394 E/AndroidRuntime( 6246): Process: com.example.hari.testapp, PID: 6246

09-01 18:08:00.394 E/AndroidRuntime( 6246): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.hari.testapp/com.example.hari.testapp.HotelList}: java.lang.NullPointerException: Attempt to invoke virtual method 'android.database.Cursor android.database.sqlite.SQLiteDatabase.query(java.lang.String, java.lang.String[], java.lang.String, java.lang.String[], java.lang.String, java.lang.String, java.lang.String)' on a null object reference

09-01 18:08:00.394 E/AndroidRuntime( 6246):     at …
Run Code Online (Sandbox Code Playgroud)

eclipse sqlite android

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