Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/190.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 无法从视图强制转换到MyListView_Java_Android_Android Listview - Fatal编程技术网

Java 无法从视图强制转换到MyListView

Java 无法从视图强制转换到MyListView,java,android,android-listview,Java,Android,Android Listview,我是Android/JAVA的新手。 我有一个类似这样的MyListViewPD,它可以作为MainActivity运行: public class MyListViewPD extends ListActivity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); SimpleAdapter adapter = new SimpleAdapt

我是Android/JAVA的新手。 我有一个类似这样的MyListViewPD,它可以作为MainActivity运行:

public class MyListViewPD extends ListActivity {
   protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    SimpleAdapter adapter = new SimpleAdapter(this, getData(),
            R.layout.vlist, new String[] { "title", "img" },
            new int[] { R.id.title, R.id.img });
    setListAdapter(adapter);

}
private List<Map<String, Object>> getData() {
    List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();

    Map<String, Object> map = new HashMap<String, Object>();
    map.put("title", "T1");
    map.put("img", R.drawable.i2);
    list.add(map);
      }
}
但是:

无法从视图强制转换为MyListViewPD


我不确定会发生什么,但我想这是一个基本问题。

我的ListViewPD不是一个视图。您将其定义为一项活动。
我想您应该阅读更多文档:)

如果您希望MyListViewPD可以在应用程序打开时启动,您最好在AndroidManifest.xml中执行此操作:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.yourprojectname"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="10"
        android:targetSdkVersion="15" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/i2"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name=".MyListViewPD"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

请注意,具有“意图过滤器”的任何活动如下所示:



可以在应用程序打开时启动。希望这对您有所帮助

如果您想以视图的形式列出,您应该扩展listview,而不是按要求列出活动和管理。您可以在xml中为列表视图自定义行

尝试
setContentView(R.id.myListView)
insteadyes。我从某人的博客上得到了myListViewPD代码:但是我不能完全理解
 listViewPD = (MyListViewPD)findViewById(R.id.myListView);
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.yourprojectname"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="10"
        android:targetSdkVersion="15" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/i2"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name=".MyListViewPD"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />