2013-01-18 36 views
0

我想,说这是我第一次稍大 Android应用程序,开始...OnItemClickListener后销毁SlidingMenu ListFragment菜单触发

我使用的是第三方库SlidingMenu,一切是伟大的工作除了一件事:当用户点击“地下室”菜单中的列表项时,该ListFragment被销毁。我在ListFragment的所有构造/解构方法中设置日志以记录活动。这是日志的图像,经过编辑以显示触摸事件发生的时间。

enter image description here

我ListFragment类的设置,像这样:

public class BasementFragment extends ListFragment implements PictureCallback { 
    BasementAdapter mAdapter; 
    RelativeLayout mHeader; 
    ArrayList<String> titles; 
    ImageView mImageButton; 

    @Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
    Log.d("BASEMENTFRAGMENT", "onCreateView"); 
    ListView view = (ListView) inflater.inflate(R.layout.basement, null); 
    mHeader = (RelativeLayout) inflater.inflate(R.layout.basement_header, null); 
    view.addHeaderView(mHeader); 

    mImageButton = (ImageView) mHeader.findViewById(R.id.image_button); 
    mImageButton.setOnClickListener(new OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      pickImage(); 
     } 
    }); 

    ParseFile imageFile = (ParseFile) ParseUser.getCurrentUser().get(NJUser.IMAGE_KEY); 
    if (imageFile != null) { 
     imageFile.getDataInBackground(new GetDataCallback() { 

      @Override 
      public void done(byte[] data, ParseException e) { 
       InputStream is = new ByteArrayInputStream(data); 
       Bitmap bmp = BitmapFactory.decodeStream(is); 
       mImageButton.setImageBitmap(bmp); 
      } 
     }); 
    } 

    return view; 
} 
    // touch logic and other stuff... 
} 

回答

0

原来我重置背后的意见,然后改变片段后设置SlideMenu对象。在我改变了事情的发生顺序之后,巴姆,坚持和没有被破坏的东西!

+0

我有同样的问题。请你再澄清一点。 – Ali