我是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可以在APP打开时启动,所以我这样做:
public class MainActivity extends Activity {
private MyListViewPD listViewPD;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
listViewPD = (MyListViewPD)findViewById(R.id.myListView);
}
}
但:
listViewPD = (MyListViewPD)findViewById(R.id.myListView);
无法从View转换为MyListViewPD
我不确定会发生什么,但我想这是一个基本问题..
答案 0 :(得分:0)
MyListViewPD不是视图。您将其定义为活动。 认为你应该阅读更多文档:)
答案 1 :(得分:0)
如果您希望MyListViewPD可以在APP打开时启动,您最好在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>
请注意任何具有“intent-filter”的活动:
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
可以在APP打开时启动。希望可以提供帮助
答案 2 :(得分:0)
如果要列为视图,则应扩展listview而不是列出活动并根据需要进行管理。您可以在xml中为列表视图设置自定义行