Android 代码中的错误按钮按钮什么都不做

Android 代码中的错误按钮按钮什么都不做,android,android-studio,android-fragments,android-dialogfragment,Android,Android Studio,Android Fragments,Android Dialogfragment,我有一个问题,我不知道哪一个是错误,当我按下“添加照片”按钮或“发送”按钮时,根本没有发生任何错误, 第一个按钮应该打开我的照片,第二个按钮应该发送给我提供代码的fragament中的RecyclerView 对不起,我的英语使用谷歌翻译 碎片 public class PostCreateDialog extends DialogFragment implements View.OnClickListener{ private static final int RC_PHOTO_

我有一个问题,我不知道哪一个是错误,当我按下“添加照片”按钮或“发送”按钮时,根本没有发生任何错误, 第一个按钮应该打开我的照片,第二个按钮应该发送给我提供代码的fragament中的RecyclerView

对不起,我的英语使用谷歌翻译

碎片

 public class PostCreateDialog  extends DialogFragment implements View.OnClickListener{

    private static final int RC_PHOTO_PICKER = 1;
    private Post mPost;
    private ProgressDialog mProgressDialog;
    private ImageView mPostImageView;
    private View mRootView;
    private Uri mSelectedUri;
    private ImageButton sendPostButton;
    private ImageButton selectFotoButton;

    @Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {
        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
        mPost = new Post();
        mProgressDialog = new ProgressDialog(getContext());
        mRootView = getActivity().getLayoutInflater().inflate(R.layout.create_post_dialog, null);

        mPostImageView = (ImageView) mRootView.findViewById(R.id.post_dialog_display);
        selectFotoButton = (ImageButton) mRootView.findViewById(R.id.post_dialog_select_imageview);
        sendPostButton = (ImageButton) mRootView.findViewById(R.id.post_dialog_send_imageview);
        builder.setView(mRootView);
        return builder.create();


    }

    @Override
    public void onClick(View v) {
        switch (v.getId()){
            case R.id.post_dialog_select_imageview:
                selectImage();
                break;
            case R.id.post_dialog_send_imageview:
                sendPost();
                break;
        }
    }


    private void sendPost() {

        mProgressDialog.setMessage("Sending post...");
        mProgressDialog.setCancelable(false);
        mProgressDialog.setIndeterminate(true);
        mProgressDialog.show();

        FirebaseUtils.getUserRef(FirebaseUtils.getCurrentUser().getEmail().replace(".",",")).addListenerForSingleValueEvent(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {
                User user = dataSnapshot.getValue(User.class);
                final String postId = FirebaseUtils.getUid();
                TextView  postDialogText = (TextView) mRootView.findViewById(R.id.post_dialog_edittext);
                String text = postDialogText.getText().toString();

                mPost.setUser(user);
                mPost.setNumOfLikes(0);
                mPost.setNumOfComments(0);
                mPost.setNumOfUnlikes(0);
                mPost.setTimeOfcreation(System.currentTimeMillis());
                mPost.setPostText(text);

                if(mSelectedUri != null){
                  FirebaseUtils.getImageRef().child(mSelectedUri.getLastPathSegment()).putFile(mSelectedUri).addOnSuccessListener(getActivity(), new OnSuccessListener<UploadTask.TaskSnapshot>() {
                      @Override
                      public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {

                          String url = Contants.POST_IMAGES + "/" + mSelectedUri.getLastPathSegment();
                          mPost.setImageUrl(url);
                          addToMyPostList(postId);

                      }
                  });
                }else {
                    addToMyPostList(postId);
                }
            }

            @Override
            public void onCancelled(DatabaseError databaseError) {
              mProgressDialog.dismiss();
            }
        });



    }

    // ESTE DE AQUI ES COMO UN FINAL A TOODO SI SE COMPLETA O SI CANCELA
    private void addToMyPostList(String postId){
         FirebaseUtils.getPostRef().child(postId).setValue(mPost);
        FirebaseUtils.getPostRef().child(postId).setValue(true).addOnCompleteListener(getActivity(), new OnCompleteListener<Void>() {
            @Override
            public void onComplete(@NonNull Task<Void> task) {
                mProgressDialog.dismiss();
                dismiss();
            }
        });

    }


    // ESTOS DOS METODOS SIRVEN PARA SELECCIONAR LA IMAGEN
    private void selectImage() {
        Intent intent1 = new Intent(Intent.ACTION_GET_CONTENT);
        intent1.setType("image/jpeg");
        intent1.putExtra(Intent.EXTRA_LOCAL_ONLY, true);
        startActivityForResult(Intent.createChooser(intent1, "Comlete action using"), RC_PHOTO_PICKER);
    }

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

        if(requestCode == RC_PHOTO_PICKER){
            if(resultCode == RESULT_OK){
              mSelectedUri = data.getData();
                mPostImageView.setImageURI(mSelectedUri);
            }
        }
    }


     }
公共类PostCreateDialog扩展DialogFragment实现View.OnClickListener{
专用静态最终int RC_PHOTO_PICKER=1;
私人邮政mPost;
private ProgressDialog mProgressDialog;
私有图像视图MPoEstimateView;
私人视图mRootView;
私有Uri mSelectedUri;
私有图像按钮sendPostButton;
私有图像按钮选择FoToButton;
@凌驾
创建对话框上的公共对话框(Bundle savedInstanceState){
AlertDialog.Builder=新建AlertDialog.Builder(getActivity());
mPost=新的Post();
mProgressDialog=newprogressdialog(getContext());
mRootView=getActivity().GetLayoutFlater().inflate(R.layout.create\u post\u对话框,空);
mPostImageView=(ImageView)mRootView.findViewById(R.id.post\u对话框\u显示);
选择FotoButton=(ImageButton)mRootView.findViewById(R.id.post\u dialog\u select\u imageview);
sendPostButton=(ImageButton)mRootView.findViewById(R.id.post\u dialog\u send\u imageview);
builder.setView(mRootView);
返回builder.create();
}
@凌驾
公共void onClick(视图v){
开关(v.getId()){
案例R.id.post\u对话框\u选择\u图像视图:
选择image();
打破
案例R.id.post\u对话框\u发送\u图像视图:
sendPost();
打破
}
}
私有void sendPost(){
设置消息(“发送邮件…”);
mProgressDialog.setCancelable(假);
mProgressDialog.setUndeterminate(true);
mProgressDialog.show();
FirebaseUtils.getUserRef(FirebaseUtils.getCurrentUser().getEmail().replace(“.”、“,”)).addListenerForSingleValueEvent(新值EventListener()){
@凌驾
公共void onDataChange(DataSnapshot DataSnapshot){
User=dataSnapshot.getValue(User.class);
最后一个字符串postId=FirebaseUtils.getUid();
TextView postDialogText=(TextView)mRootView.findViewById(R.id.post\u dialog\u edittext);
字符串文本=postDialogText.getText().toString();
mPost.setUser(用户);
mPost.setNumOfLikes(0);
mPost.setNumOfComments(0);
mPost.setnumoflikes(0);
mPost.setTimeOfcreation(System.currentTimeMillis());
mPost.setPostText(文本);
如果(mSelectedUri!=null){
FirebaseUtils.getImageRef().child(mSelectedUri.getLastPathSegment()).putFile(mSelectedUri.addOnSuccessListener(getActivity(),new OnSuccessListener()){
@凌驾
成功时公共无效(UploadTask.TaskSnapshot TaskSnapshot){
字符串url=Contants.POST_IMAGES+“/”+mSelectedUri.getLastPathSegment();
mPost.setImageUrl(url);
addToMyPostList(postId);
}
});
}否则{
addToMyPostList(postId);
}
}
@凌驾
已取消的公共void(DatabaseError DatabaseError){
mProgressDialog.disclose();
}
});
}
//这是最后一个完整的句子
私有void addToMyPostList(字符串postId){
FirebaseUtils.getPostRef().child(postId).setValue(mPost);
FirebaseUtils.getPostRef().child(postId).setValue(true).addOnCompleteListener(getActivity(),new OnCompleteListener()){
@凌驾
未完成的公共void(@NonNull任务){
mProgressDialog.disclose();
解雇();
}
});
}
//这是我的梦想
私有void selectImage(){
Intent intent1=新的意图(Intent.ACTION\u GET\u CONTENT);
intent1.setType(“图像/jpeg”);
intent1.putExtra(仅限Intent.EXTRA\u LOCAL\u,true);
startActivityForResult(Intent.createChooser(intent1,“使用完成操作”),RC\u PHOTO\u PICKER;
}
@凌驾
ActivityResult上的公共void(int请求代码、int结果代码、意图数据){
super.onActivityResult(请求代码、结果代码、数据);
if(requestCode==RC\u PHOTO\u PICKER){
if(resultCode==RESULT\u OK){
mSelectedUri=data.getData();
mPostImageView.setImageURI(mSelectedUri);
}
}
}
}
对话框:

 public class PostCreateDialog  extends DialogFragment implements View.OnClickListener{

    private static final int RC_PHOTO_PICKER = 1;
    private Post mPost;
    private ProgressDialog mProgressDialog;
    private ImageView mPostImageView;
    private View mRootView;
    private Uri mSelectedUri;
    private ImageButton sendPostButton;
    private ImageButton selectFotoButton;

    @Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {
        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
        mPost = new Post();
        mProgressDialog = new ProgressDialog(getContext());
        mRootView = getActivity().getLayoutInflater().inflate(R.layout.create_post_dialog, null);

        mPostImageView = (ImageView) mRootView.findViewById(R.id.post_dialog_display);
        selectFotoButton = (ImageButton) mRootView.findViewById(R.id.post_dialog_select_imageview);
        sendPostButton = (ImageButton) mRootView.findViewById(R.id.post_dialog_send_imageview);
        builder.setView(mRootView);
        return builder.create();


    }

    @Override
    public void onClick(View v) {
        switch (v.getId()){
            case R.id.post_dialog_select_imageview:
                selectImage();
                break;
            case R.id.post_dialog_send_imageview:
                sendPost();
                break;
        }
    }


    private void sendPost() {

        mProgressDialog.setMessage("Sending post...");
        mProgressDialog.setCancelable(false);
        mProgressDialog.setIndeterminate(true);
        mProgressDialog.show();

        FirebaseUtils.getUserRef(FirebaseUtils.getCurrentUser().getEmail().replace(".",",")).addListenerForSingleValueEvent(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {
                User user = dataSnapshot.getValue(User.class);
                final String postId = FirebaseUtils.getUid();
                TextView  postDialogText = (TextView) mRootView.findViewById(R.id.post_dialog_edittext);
                String text = postDialogText.getText().toString();

                mPost.setUser(user);
                mPost.setNumOfLikes(0);
                mPost.setNumOfComments(0);
                mPost.setNumOfUnlikes(0);
                mPost.setTimeOfcreation(System.currentTimeMillis());
                mPost.setPostText(text);

                if(mSelectedUri != null){
                  FirebaseUtils.getImageRef().child(mSelectedUri.getLastPathSegment()).putFile(mSelectedUri).addOnSuccessListener(getActivity(), new OnSuccessListener<UploadTask.TaskSnapshot>() {
                      @Override
                      public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {

                          String url = Contants.POST_IMAGES + "/" + mSelectedUri.getLastPathSegment();
                          mPost.setImageUrl(url);
                          addToMyPostList(postId);

                      }
                  });
                }else {
                    addToMyPostList(postId);
                }
            }

            @Override
            public void onCancelled(DatabaseError databaseError) {
              mProgressDialog.dismiss();
            }
        });



    }

    // ESTE DE AQUI ES COMO UN FINAL A TOODO SI SE COMPLETA O SI CANCELA
    private void addToMyPostList(String postId){
         FirebaseUtils.getPostRef().child(postId).setValue(mPost);
        FirebaseUtils.getPostRef().child(postId).setValue(true).addOnCompleteListener(getActivity(), new OnCompleteListener<Void>() {
            @Override
            public void onComplete(@NonNull Task<Void> task) {
                mProgressDialog.dismiss();
                dismiss();
            }
        });

    }


    // ESTOS DOS METODOS SIRVEN PARA SELECCIONAR LA IMAGEN
    private void selectImage() {
        Intent intent1 = new Intent(Intent.ACTION_GET_CONTENT);
        intent1.setType("image/jpeg");
        intent1.putExtra(Intent.EXTRA_LOCAL_ONLY, true);
        startActivityForResult(Intent.createChooser(intent1, "Comlete action using"), RC_PHOTO_PICKER);
    }

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

        if(requestCode == RC_PHOTO_PICKER){
            if(resultCode == RESULT_OK){
              mSelectedUri = data.getData();
                mPostImageView.setImageURI(mSelectedUri);
            }
        }
    }


    }
公共类PostCreateDialog扩展DialogFragment实现View.OnClickListener{
专用静态最终int RC_PHOTO_PICKER=1;
私人邮政mPost;
private ProgressDialog mProgressDialog;
私有图像视图MPoEstimateView;
私人视图mRootView;
私有Uri mSelectedUri;
私有图像按钮sendPostButton;
私有图像按钮选择FoToButton;
@凌驾
创建对话框上的公共对话框(Bundle savedInstanceState){
AlertDialog.Builder=新建AlertDialog.Builder(getActivity());
mPost=新的Post();
mProgressDialog=newprogressdialog(getContext());
mRootView=getActivity().GetLayoutFlater().inflate(R.layout.create\u post\u对话框,空);
mPostImageView=(ImageView)mRootView.findViewById(R.id.post\u对话框\u显示);
选择FotoButton=(ImageButton)mRootView.findViewById(R.id.post\u dialog\u select\u imageview);
sendPostButton=(ImageButton)mRootView.findViewById(R.id.post\u dialog\u send\u imageview);
builder.setView(mRootView);
返回生成器