问题描述
请告诉我,为什么它不喜欢我的布局(带有@+id/row
的RelativeLayout)?
Tell me please, why it doesn't like my layout (RelativeLayout with @+id/row
)?
当我将其与自行创建的适配器(layoutinflater)一起使用时,它可以很好地工作.还有一个.我打算在数据库中使用像byte[]
一样存储的位图. SimpleCursorAdapter
本身可以将byte []日期转换为图像(ImageView)还是仅适用于文本?
When I use it with self created adapter (layoutinflater) it works good.And one more. I plan to use in my database bitmaps, stored like byte[]
. Can SimpleCursorAdapter
itself convert byte[] dates in to image (ImageView) or does it work only with texts?
错误描述
android.content.res.Resources$NotFoundException: Resource ID #0x7f0c006c type #0x12 is not valid
MainActivity
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mListView = ( (ListView) findViewById (R.id.notes_listView) );
mNoteDb = new NoteDb (getApplicationContext ());
Cursor c = mNoteDb.getTitleColumn ();
SimpleCursorAdapter mAdapter = new SimpleCursorAdapter (getApplicationContext (),
R.id.row, // **<<< THIS ONE**
c, new String[]{NoteDb.MainTable.COLUMN_TITLE}, new int[]{R.id.title_text_row}, 0);
mListView.setAdapter (mAdapter);
行布局
<RelativeLayout
android:id="@+id/row"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/date_row"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_marginRight="10sp"
android:text="@string/main_row_tv_date"
android:textSize="14sp"/>
<ImageView
android:id="@+id/note_icon"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:contentDescription="@string/main_row_icon_description"
android:cropToPadding="true"
android:maxHeight="45dp"
android:maxWidth="45dp"
android:adjustViewBounds="true"
app:srcCompat="@mipmap/ic_launcher"
android:layout_alignBottom="@+id/priority_icon"/>
<ImageView
android:id="@+id/priority_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_below="@+id/date_row"
android:contentDescription="@string/main_row_icon_priority_description"
android:maxHeight="25dp"
android:maxWidth="25dp"
android:cropToPadding="true"
android:src="@drawable/ic_priority_first"
android:adjustViewBounds="true"/>
<TextView
android:id="@+id/title_text_row"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="20sp"
android:layout_alignBottom="@id/note_icon"
android:layout_toRightOf="@+id/note_icon"
android:layout_toEndOf="@+id/note_icon"
android:text="@string/main_row_tv_title"/>
光标查询
public Cursor getTitleColumn () {
SQLiteDatabase db;
db = mNoteDbOpenHelper.getReadableDatabase ();
Cursor c = db.query (MainTable.TABLE_NAME,
new String[] {MainTable._ID, MainTable.COLUMN_TITLE},
null, null, null, null, null);
return c;
推荐答案
您应该提供的布局不是ID.将R.id.row
替换为R.layout.your_layout_name
you should provide a layout not an id. Replace R.id.row
with R.layout.your_layout_name
这篇关于Resources $ NotFoundException:资源ID#类型#0x12无效的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!