小编moi*_*tab的帖子

Android相机意图返回null ...有时候

我在两个不同的物理设备上调试我的应用程序:

  • 摩托罗拉Moto G,Android 4.4.2
  • LG OPTIMUS L5 II,Android 4.1.2

我在按钮中调用相机:

buttonCamera.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
                startActivityForResult(intent, REQUEST_IMAGE_CAPTURE);
            }
        });
Run Code Online (Sandbox Code Playgroud)

我像这样管理意图结果:

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    if (requestCode == REQUEST_IMAGE_CAPTURE && resultCode == RESULT_OK) {
            Uri selectedImage = data.getData(); // <-- Sometimes null
    }
Run Code Online (Sandbox Code Playgroud)

这里的问题是data.getData()在摩托罗拉Moto G 中是空的而在LG OPTIMUS中没有,为什么会这样?我怎样才能避免在摩托罗拉Moto G中获得null?

camera android android-intent

6
推荐指数
1
解决办法
1053
查看次数

导航抽屉和MapFragment

我想知道用导航抽屉实现MapFragment的正确方法是什么.我已经有了这个工作正常,但我一直在阅读一些文档,也许它可能会导致将来的麻烦.

因此,我实现导航抽屉的主类是非常正常的,使用以下selectItem()方法:

HomeActivity extends Activity{

//...
//Stuff like onCreate(), etc.
//...

private void selectItem(int position) {
    if (position == 0) {  //Position 0 is the map option in the navigationDrawer
        Fragment fragment = new MapaFragment();
        FragmentManager fragmentManager = getFragmentManager();
        fragmentManager.beginTransaction()
                .replace(R.id.content_frame, fragment).commit();
    }
    mDrawerList.setItemChecked(position, true);
    setTitle(listaElementosDrawer[position]);
    mDrawerLayout.closeDrawer(mDrawerList);
    }
}
Run Code Online (Sandbox Code Playgroud)

MapaFragment是主要活动中膨胀的片段,如下所示:

public class MapaFragment extends Fragment {

public MapaFragment() {
}

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {
    View rootView = inflater.inflate(R.layout.fragment_map, container,
            false);
    return rootView; …
Run Code Online (Sandbox Code Playgroud)

android google-maps android-layout android-fragments

5
推荐指数
1
解决办法
1813
查看次数