我正在尝试构建一个包含行的自定义视图的列表,每行包含一个图像视图和两个文本视图.
为了做到这一点,我扩展了ArrayAdapter类(称为PostersArrayAdapter)并重写了getView()方法,以便在数据和行布局之间建立正确的连接.
但是,当我尝试使用一些PosterData类(我的实现)构造一个带有一些数据的PostersArrayAdapter时,结果是适配器为空,意味着getCount()返回零并且listView为空.
任何人都可以建议我做错了什么?我依赖于我在这里找到的代码 - http://www.vogella.de/articles/AndroidListView/article.html
非常感谢你!
这里是相关的代码:( PosterData类只是一个有两个字符串字段的类)
public class PostersListActivity extends ListActivity {
final private int NUM_OF_PICS = 2;
private ContentGetter cg;
private PosterData[] posters;
private ListView listView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
cg = new ContentGetter(NUM_OF_PICS);
try
{
posters = cg.parseIndexFile();
int res = cg.DownloadPosterPics(1);
}
catch (ClientProtocolException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
// Use our own list adapter
listView = (ListView)findViewById(android.R.id.list);
//listView.setAdapter((ListAdapter) new ArrayAdapter<String>(this,R.layout.list_item,R.id.title,titles));
PostersArrayAdapter postersAdapter = new …Run Code Online (Sandbox Code Playgroud) 我正在为我的AndEngine的BaseGameActivity编写一个自定义对话框窗口,有时候,当对话框必须消失时,应用程序会因此错误而崩溃:
08-15 09:49:16.193: ERROR/AndroidRuntime(1572): FATAL EXCEPTION: GLThread
java.lang.IndexOutOfBoundsException: Invalid index 3, size is 3
at java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:251)
at java.util.ArrayList.get(ArrayList.java:304)
at org.anddev.andengine.entity.Entity.onManagedDrawChildren(Entity.java:1008)
at org.anddev.andengine.entity.Entity.onDrawChildren(Entity.java:1000)
at org.anddev.andengine.entity.Entity.onManagedDraw(Entity.java:993)
at org.anddev.andengine.entity.scene.Scene.onManagedDraw(Scene.java:233)
at org.anddev.andengine.entity.Entity.onDraw(Entity.java:875)
at org.anddev.andengine.engine.Engine.onDrawScene(Engine.java:517)
at org.anddev.andengine.engine.Engine.onDrawFrame(Engine.java:509)
at org.anddev.andengine.opengl.view.RenderSurfaceView$Renderer.onDrawFrame(RenderSurfaceView.java:154)
at org.anddev.andengine.opengl.view.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:617)
at org.anddev.andengine.opengl.view.GLSurfaceView$GLThread.run(GLSurfaceView.java:549)
Run Code Online (Sandbox Code Playgroud)