Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我想在firebase android的帮助下上传图像和文本?_Android_Firebase - Fatal编程技术网

我想在firebase android的帮助下上传图像和文本?

我想在firebase android的帮助下上传图像和文本?,android,firebase,Android,Firebase,txt\u category.getText().toString()这不会发生。它是空的。图像url即将出现,但文本未出现在ActivityResult()中。我想要一个包含文本类别名称和图像的id。如何从对话框中获取editText并放入hashMapinonactivity()方法。由于对象引用为空,每次I时应用程序都会崩溃。无法从对话框editText获取文本。每次都是空的。图像url即将出现,但ActivityResult()上的文本未出现。我想要一个类别名称和图像都应该出现的idtx

txt\u category.getText().toString()
这不会发生。它是空的。图像url即将出现,但文本未出现在ActivityResult()中。我想要一个包含文本类别名称和图像的id。如何从对话框中获取editText并放入hashMap
inonactivity()
方法。由于对象引用为空,每次I时应用程序都会崩溃。无法从对话框editText获取文本。每次都是空的。图像url即将出现,但ActivityResult()上的文本未出现。我想要一个类别名称和图像都应该出现的id
txt\u category.getText().toString()
这不会发生。它是空的。图像url即将出现,但文本未出现在ActivityResult()上。

公共类HomeFragment扩展了片段{
私有数据库引用Rootref;
字符串d;
HashMapHashMap,hashMap1;
FirebaseAuth mAuth;
FirebaseRecyclerAdapter适配器;
FirebaseUser FirebaseUser;
私有字符串currentUserId;
编辑文本txt_类别;
按钮BTSELECT,btnUpload;
private ProgressDialog mProgressDialog;
字符串id;
私有存储引用imgStorageReference;
回收商查看回收商类别;
按钮btn_类别,btn_子类别;
专用静态最终整型库_PICK=1;
字符串catName;
公共静态最终字符串UPDATE=“UPDATE”;
公共静态最终字符串DELETE=“DELETE”;
视图;
文本视图;
公共HomeFragment(){}
@凌驾
创建视图上的公共视图(布局、充气机、视图组容器、,
Bundle savedInstanceState){
视图=充气机。充气(R.layout.fragment\u home,container,false);
初始化();
返回视图;
}
私有无效初始化(){
imgStorageReference=FirebaseStorage.getInstance().getReference();
hashMap1=新的HashMap<>();
回收商\u类别设置布局管理器(glm);
id=UUID.randomuid().toString();
btn_category=view.findViewById(R.id.btn_category);
showDialog();
btn_category.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图){
showDialog()
}
});
}
私有void showDialog(){
AlertDialog.Builder=新建AlertDialog.Builder(getContext());
builder.setTitle(“输入类别名称:”);
builder.setMessage(“请填写完整信息”);
LayoutInflater充气器=HomeFragment.this.getLayoutInflater();
最终视图自定义布局=
充气器。充气(R.layout.custom_dialog_category,空);
btnSelect=custom_layout.findviewbyd(R.id.btnSelect);
btnUpload=custom_layout.findviewbyd(R.id.btnUpload);
builder.setView(自定义_布局);
builder.setIcon(R.drawable.ic\u购物车\u黑色\u 24dp);
Rootref=FirebaseDatabase.getInstance().getReference(“类别”);
最终编辑文本txt_类别=
自定义布局。findViewById(R.id.edit\u text\u cat);
btnSelect.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图){
选择图像();
}
});
builder.show();
}
私有void chooseImage(){
CropImage.activity()
.setGuidelines(CropImageView.Guidelines.ON)
.start(getContext(),HomeFragment.this);
}
@凌驾
ActivityResult上的公共void(int请求代码、int结果代码、意图数据){
super.onActivityResult(请求代码、结果代码、数据);
if(requestCode==GALLERY\u PICK&&resultCode==RESULT\u OK){
Uri imageURI=data.getData();
活动(imageURI)。
setAspectRatio(1,1).start(getContext(),HomeFragment.this);
}
if(requestCode==CropImage.CROP\u IMAGE\u ACTIVITY\u REQUEST\u CODE){
CropImage.ActivityResult结果=CropImage.getActivityResult(数据);
if(resultCode==RESULT\u OK){
mProgressDialog=newprogressdialog(getContext());
设置标题(“保存更改”);
设置消息(“等待直到保存所有更改”);
mProgressDialog.setCanceledOnTouchOutside(false);
mProgressDialog.show();
Uri resultUri=result.getUri();
StorageReference文件路径=
imgStorageReference.child(“Profile_images”).child(id+”.jpg);
filepath.putFile(resultUri).addOnCompleteListener(新的OnCompleteListener(){
@凌驾
public void onComplete(@NonNull TaskTask){
if(task.issusccessful()){
imgStorageReference.child(“Profile_图像”)。
子(id+“.jpg”).getDownloadUrl().addOnSuccessListener(新OnSuccessListener(){
@凌驾
成功时的公共无效(Uri){
String downloadUrl=uri.toString();
put(“imageURL”,下载URL);
put(“category”,txt_category.getText().toString());
Rootref.push().setValue(hashMap).addOnCompleteListener(新
OnCompleteListener(){
@凌驾
公共void onComplete(@NonNull TaskTask){
if(task.issusccessful()){
mProgressDialog.disclose();
Toast.makeText(getContext(),“图像更新”,
吐司。长度(短)。show();
onResume();
}
}
});
}
});
}
Toast.makeText(SettingsActivity.this,“工作”,
吐司。长度(短)。show();
}
否则{
Toast.makeText(getContext(),“不工作”,
吐司。长度(短)。show();
mProgressDialog.disclose();
}
}
});
}else if(结果代码==
CropImage.CROP\u图像\u活动\u结果\u错误\u代码){
异常错误=result.getError();
}
}
}
<
public class HomeFragment extends Fragment {
    private DatabaseReference Rootref;
    String d;
    HashMap < String, String > hashMap, hashMap1;
    FirebaseAuth mAuth;
    FirebaseRecyclerAdapter adapter;
    FirebaseUser firebaseUser;
    private String currentUserId;
    EditText txt_category;
    Button btnSelect, btnUpload;
    private ProgressDialog mProgressDialog;
    String id;
    private StorageReference imgStorageReference;
    RecyclerView recycler_category;
    Button btn_category, btn_subcat;
    private static final int GALLERY_PICK = 1;
    String catName;
    public static final String UPDATE = "UPDATE";
    public static final String DELETE = "DELETE";
    View view;
    TextView txt;

    public HomeFragment() {}

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
     Bundle savedInstanceState) {
     view = inflater.inflate(R.layout.fragment_home, container, false);
     intialise();
     return view;
    }

    private void intialise() {
     imgStorageReference = FirebaseStorage.getInstance().getReference();
     hashMap1 = new HashMap < > ();
     recycler_category.setLayoutManager(glm);
     id = UUID.randomUUID().toString();
     btn_category = view.findViewById(R.id.btn_category);
     showDialog();
     btn_category.setOnClickListener(new View.OnClickListener() {
      @Override
      public void onClick(View view) {
       showDialog()
      }
     });
    }

    private void showDialog() {
     AlertDialog.Builder builder = new AlertDialog.Builder(getContext());
     builder.setTitle("Enter Category Name : ");
     builder.setMessage("Please fill full information");
     LayoutInflater inflater = HomeFragment.this.getLayoutInflater();
     final View custom_layout =
      inflater.inflate(R.layout.custom_dialog_category, null);
     btnSelect = custom_layout.findViewById(R.id.btnSelect);
     btnUpload = custom_layout.findViewById(R.id.btnUpload);
     builder.setView(custom_layout);
     builder.setIcon(R.drawable.ic_shopping_cart_black_24dp);
     Rootref = FirebaseDatabase.getInstance().getReference("Category");
     final EditText txt_category =
      custom_layout.findViewById(R.id.edit_text_cat);
     btnSelect.setOnClickListener(new View.OnClickListener() {
      @Override
      public void onClick(View view) {
       chooseImage();
      }
     });
     builder.show();
    }

    private void chooseImage() {
     CropImage.activity()
      .setGuidelines(CropImageView.Guidelines.ON)
      .start(getContext(), HomeFragment.this);
    }


    @Override
    public void onActivityResult(int requestCode, int resultCode, Intent data) {
     super.onActivityResult(requestCode, resultCode, data);
     if (requestCode == GALLERY_PICK && resultCode == RESULT_OK) {
      Uri imageURI = data.getData();
      CropImage.activity(imageURI).
      setAspectRatio(1, 1).start(getContext(), HomeFragment.this);
     }

     if (requestCode == CropImage.CROP_IMAGE_ACTIVITY_REQUEST_CODE) {
      CropImage.ActivityResult result = CropImage.getActivityResult(data);

      if (resultCode == RESULT_OK) {
       mProgressDialog = new ProgressDialog(getContext());
       mProgressDialog.setTitle("Saving Changes");
       mProgressDialog.setMessage("Wait untill changes are saved");
       mProgressDialog.setCanceledOnTouchOutside(false);
       mProgressDialog.show();
       Uri resultUri = result.getUri();

       StorageReference filepath =
        imgStorageReference.child("Profile_images").child(id + ".jpg");

       filepath.putFile(resultUri).addOnCompleteListener(new OnCompleteListener < UploadTask.TaskSnapshot > () {
         @Override
         public void onComplete(@NonNull Task < UploadTask.TaskSnapshot > task) {
          if (task.isSuccessful()) {
           imgStorageReference.child("Profile_images").
           child(id + ".jpg").getDownloadUrl().addOnSuccessListener(new OnSuccessListener < Uri > () {
            @Override
            public void onSuccess(Uri uri) {
             String downloadUrl = uri.toString();
             hashMap.put("imageURL", downloadUrl);
             hashMap.put("category", txt_category.getText().toString());
             Rootref.push().setValue(hashMap).addOnCompleteListener(new

              OnCompleteListener < Void > () {
               @Override
               public void onComplete(@NonNull Task < Void > task) {
                if (task.isSuccessful()) {
                 mProgressDialog.dismiss();
                 Toast.makeText(getContext(), " Image Updated",
                  Toast.LENGTH_SHORT).show();
                 onResume();
                }
               }
              });
            }
           });
          }

          Toast.makeText(SettingsActivity.this, "Working",
           Toast.LENGTH_SHORT).show();
         }
         else {
          Toast.makeText(getContext(), "Not Working",
           Toast.LENGTH_SHORT).show();
          mProgressDialog.dismiss();
         }
        }
       });
     } else if (resultCode ==
      CropImage.CROP_IMAGE_ACTIVITY_RESULT_ERROR_CODE) {
      Exception error = result.getError();
     }
    }
   }