私のアクティビティ Oncreate() 関数では、AsyncTaskを呼び出しています。そのPostExecute( ) で、いくつかの動的ギャラリー コントロールを作成し、 ImageAdapterL.notifyDataSetChanged();を呼び出します。. しかし、ヌルポインター例外が発生します。
Oncreate() を呼び出さずにアクティビティを更新する必要があります [Oncreate の B'coz は非同期タスクを呼び出しているだけです]。
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home_page);
new testAynscTask().execute();
}
private class testAynscTask extends AsyncTask<Void, Void, Void>{
@Override
protected Void doInBackground(Void... params) {
processTogetImages();
// TODO Auto-generated method stub
return null;
}
@Override
protected void onPostExecute(Void result) {
super.onPostExecute(result);
CreateDynamicGallery();
aImageAdapterL.notifyDataSetChanged();
}
}
public void CreateDynamicGallery(){
CategoryGalleryLayout = (LinearLayout) findViewById(R.id.linearLayout1);
Gallery g = new Gallery(getApplicationContext());
GalleryLayout.addView(g,new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
g.setSpacing(15);
aImageAdapterL = new ImageAdapter(getApplicationContext());
g.setAdapter(aImageAdapterL);
g[positionP].setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(@SuppressWarnings("rawtypes") AdapterView parent, View v, int position, long id) {
Toast.makeText(getBaseContext(), "" + position, Toast.LENGTH_SHORT).show();
}
});
}
}
前もって感謝します