ListView在某些设备中工作,在某些设备中是空白的

时间:2017-08-13 15:42:14

标签: android listview

我面临的是我有一个预先填充并运作良好的数据库。我正在使用ListView来显示我数据库的一些内容 好吧,问题是ListView在许多设备和模拟器中没有任何错误(甚至在logcat中),并且在我的Honor 6x(Nougat)中是空白的。
它只是空白,除了E/HW-JPEG-DEC: [HME_JPEG_DEC_Delete](3321): HME_JPEG_DEC_Delete: decoder_ctx=null之外,logcat没有错误,我认为这与我的问题无关。

这是MyDatabase.java

 public class MyDatabase extends SQLiteAssetHelper {
    private static final String DATABASE_NAME = "plethora.db";
    private static final int DATABASE_VERSION = 1;
    public MyDatabase(Context context) {
        super(context, DATABASE_NAME, null, DATABASE_VERSION);
    }
    public Cursor getNames() {
        SQLiteDatabase db = getReadableDatabase();
        SQLiteQueryBuilder qb = new SQLiteQueryBuilder();
        int i =3;
        String [] sqlSelect = {"1 _id", "Name"};
        String sqlTables = "Names";
        String selection = "_id = ?";
        String[] selectionArgs = { ""+i };
        qb.setTables(sqlTables);
        Cursor c = qb.query(db, sqlSelect, selection, selectionArgs,
                null, null, null);
        c.moveToFirst();
        return c;
    }
 }

这是MainActivity.java

public class MainActivity extends AppCompatActivity {
    private Cursor Names;
    private MyDatabase db;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_bus_route);
        db = new MyDatabase(this);
        Names = db.getNames();
        final ListAdapter adapter = new SimpleCursorAdapter(this,
                android.R.layout.simple_list_item_1,
                Names,
                new String[] {"Name"},
                new int[] {android.R.id.text1});
        final ListView listView = (ListView) findViewById(R.id.listV1);
        listView.setAdapter(adapter);
    }
}

这是activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout 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"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    tools:context="Studios.Example.com.Database.Names"
    android:orientation="horizontal"
    android:baselineAligned="false">
    <ListView
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:background="@drawable/lv1"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toBottomOf="parent"
        app:layout_constraintBottom_toBottomOf="parent"
        android:id="@+id/listV1"
        />
</android.support.constraint.ConstraintLayout>

我尝试将背景设置为ListView以检查它是否显示,我可以在手机屏幕上看到背景,但在其他情况下,我可以看到整个列表数据。 /> 我已尝试在本网站上提供的一些建议但没有任何效果。

任何帮助/建议/解决方案将不胜感激。感谢。

0 个答案:

没有答案