Android ListView在某些设备中工作,在某些设备中为空
我面临的是,我有一个预填充的数据库,而且运行良好。我正在使用Android ListView在某些设备中工作,在某些设备中为空,android,listview,Android,Listview,我面临的是,我有一个预填充的数据库,而且运行良好。我正在使用列表视图显示我的一些数据库内容。 好吧,问题是ListView在许多设备和模拟器中工作没有任何错误(甚至在logcat中),在我的荣誉6x(牛轧糖)中是空白的它只是空白,logcat中没有错误,除了E/HW-JPEG-DEC:[HME\u JPEG\u DEC\u Delete](3321):HME\u JPEG\u DEC\u Delete:decoder\u ctx=null,我认为这与我的问题无关。这是MyDatabase.jav
列表视图
显示我的一些数据库内容。好吧,问题是
ListView
在许多设备和模拟器中工作没有任何错误(甚至在logcat中),在我的荣誉6x(牛轧糖)中是空白的它只是空白,logcat中没有错误,除了
E/HW-JPEG-DEC:[HME\u JPEG\u DEC\u Delete](3321):HME\u JPEG\u DEC\u Delete:decoder\u ctx=null
,我认为这与我的问题无关。这是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
,以检查它是否显示,我可以在手机屏幕上看到背景,但在其他手机中,我可以看到整个列表数据。我尝试了这个网站上提供的一些建议,但没有任何效果。
任何帮助/建议/解决方案都将不胜感激。谢谢。