Android Xmlapter示例不工作。包含(联系人阅读器、Rss源、照片显示)
我正在从基本的google资源文件夹开发RSS提要应用程序。 现在,我正在按照示例中的建议显示所有三个内容 1.联系方式。 2.照片。 3.RSS源 以下是链接: 我按照我的要求很好地管理代码。只更改包和项目名称。 但它的显示有一个致命错误: LOGCAT:Android Xmlapter示例不工作。包含(联系人阅读器、Rss源、照片显示),android,android-layout,android-manifest,android-activity,Android,Android Layout,Android Manifest,Android Activity,我正在从基本的google资源文件夹开发RSS提要应用程序。 现在,我正在按照示例中的建议显示所有三个内容 1.联系方式。 2.照片。 3.RSS源 以下是链接: 我按照我的要求很好地管理代码。只更改包和项目名称。 但它的显示有一个致命错误: LOGCAT: 04-09 17:40:02.894: E/AndroidRuntime(770): FATAL EXCEPTION: main 04-09 17:40:02.894: E/AndroidRuntime(770): java.l
04-09 17:40:02.894: E/AndroidRuntime(770): FATAL EXCEPTION: main
04-09 17:40:02.894: E/AndroidRuntime(770): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.satyamdswt.agreader/com.satyamdswt.agreader.ContactsListActivity}: java.lang.IllegalArgumentException: The layout specified in contacts does not exist
04-09 17:40:02.894: E/AndroidRuntime(770): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1647)
04-09 17:40:02.894: E/AndroidRuntime(770): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)
04-09 17:40:02.894: E/AndroidRuntime(770): at android.app.ActivityThread.access$1500(ActivityThread.java:117)
04-09 17:40:02.894: E/AndroidRuntime(770): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
04-09 17:40:02.894: E/AndroidRuntime(770): at android.os.Handler.dispatchMessage(Handler.java:99)
04-09 17:40:02.894: E/AndroidRuntime(770): at android.os.Looper.loop(Looper.java:123)
04-09 17:40:02.894: E/AndroidRuntime(770): at android.app.ActivityThread.main(ActivityThread.java:3683)
04-09 17:40:02.894: E/AndroidRuntime(770): at java.lang.reflect.Method.invokeNative(Native Method)
04-09 17:40:02.894: E/AndroidRuntime(770): at java.lang.reflect.Method.invoke(Method.java:507)
04-09 17:40:02.894: E/AndroidRuntime(770): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
04-09 17:40:02.894: E/AndroidRuntime(770): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
04-09 17:40:02.894: E/AndroidRuntime(770): at dalvik.system.NativeStart.main(Native Method)
04-09 17:40:02.894: E/AndroidRuntime(770): Caused by: java.lang.IllegalArgumentException: The layout specified in contacts does not exist
04-09 17:40:02.894: E/AndroidRuntime(770): at com.satyamdswt.agreader.Adapters$XmlCursorAdapterParser.parse(Adapters.java:219)
04-09 17:40:02.894: E/AndroidRuntime(770): at com.satyamdswt.agreader.Adapters.createCursorAdapter(Adapters.java:168)
04-09 17:40:02.894: E/AndroidRuntime(770): at com.satyamdswt.agreader.Adapters.createAdapterFromXml(Adapters.java:151)
04-09 17:40:02.894: E/AndroidRuntime(770): at com.satyamdswt.agreader.Adapters.loadAdapter(Adapters.java:105)
04-09 17:40:02.894: E/AndroidRuntime(770): at com.satyamdswt.agreader.Adapters.loadAdapter(Adapters.java:92)
04-09 17:40:02.894: E/AndroidRuntime(770): at com.satyamdswt.agreader.ContactsListActivity.onCreate(ContactsListActivity.java:12)
04-09 17:40:02.894: E/AndroidRuntime(770): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
04-09 17:40:02.894: E/AndroidRuntime(770): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611)
04-09 17:40:02.894: E/AndroidRuntime(770): ... 11 more
在LogCat中,您可以看到:
com.satyamdswt.agreader/com.satyamdswt.agreader.ContactsListActivity
我不知道为什么会发生两次
有关更多信息,请在此处显示我的Manifest.xml:
Manifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.satyamdswt.agreader"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="10" />
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.READ_CONTACTS"/>
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:name=".ContactsListActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name="PhotosListActivity"
android:label="@string/photos_list_activity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".AGRssReaderActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
已编辑
contacts.xml
<?xml version="1.0" encoding="utf-8"?>
<cursor-adapter xmlns:android="com.satyamdswt.agreader"
xmlns:app="http://schemas.android.com/apk/res/com.satyamdswt.agreader"
android:layout_width="@layout/contact_item"
app:selection="has_phone_number = 1 "
app:uri="content://com.satyamdswt.contacts/contacts" >
<bind
app:from="display_name"
app:to="@id/name"
app:as="string"/>
<bind
app:as="drawable"
app:from="starred"
app:to="@id/star" >
<map
app:fromValue="0"
app:toValue="@android:drawable/star_big_off" />
<map
app:fromValue="1"
app:toValue="@android:drawable/star_big_on" />
</bind>
<bind
app:as="com.satyamdswt.agreader.ContactPhotoBinder"
app:from="_id"
app:to="@id/name" />
</cursor-adapter>
将contacts_list.xml放入layouts文件夹 从这里下载文件并放入layouts文件夹 编辑 我认为错误在于这个文件 请检查布局文件夹中是否有布局“联系人项目”
您可以在这里找到它-我重新创建了您的错误。问题出在您的
res/xml/contacts.xml
文件中
更改此行:
xmlns:app="com.satyamdswt.agreader"
xmlns:app="http://schemas.android.com/apk/res/com.satyamdswt.agreader"
关于这一行:
xmlns:app="com.satyamdswt.agreader"
xmlns:app="http://schemas.android.com/apk/res/com.satyamdswt.agreader"
它是应用程序的XML名称空间的正确格式:http://schemas.android.com/apk/res/package_name
Upd:您不应该更改
标记中的其他参数。权利形式:
<cursor-adapter xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res/com.satyamdswt.agreader"
app:uri="content://com.android.contacts/contacts"
app:selection="has_phone_number=1"
app:layout="@layout/contact_item">
您是否对ContactListActivity进行了任何更改?如果是这样,请将它们张贴在这里。我为ContactListActivity添加了代码。如果您需要更多信息,请告诉我。您是否已经编写了此类代码?@SDROIDRisk也发布contacts.xml,如果与示例中相同,请确保您已将所需的布局和所有包名更改为您已重命名的名称。因此,请参阅此链接-从您所放置的内容来看,我认为错误仍然存在于您的布局中-我将尝试运行代码,并告诉您它是否有效以及您以后需要进行哪些更改。同时发布res/xml/contacts.xml
文件..我已更改程序包名称。但它仍然不起作用。我编辑了我的contacts.xm。请看它的格式是否正确?