热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

我想更新用户个人资料数据,但所有数据已更新,图像数据已删除?

我想更新除图像之外的所有用户个人资料数据。我不希望更改图像ut,当我单击“

我想更新除图像之外的所有用户个人资料数据。我不希望更改图像ut,当我单击“更新”按钮时,所有数据都将最终更新,但是图像已从Firebase中删除,请提前帮助我。谢谢。我应用的更新功能是(btn_update.setOnclicklistener)。我想更新除图像之外的所有用户配置文件数据。我不希望更改图像ut,当我单击更新按钮时所有数据都已更新但图像已从Firebase中删除时,请提前帮助我。谢谢。我应用的更新功能是(btn_update.setOnclicklistener)。

My Updated Classs
package com.deitel.fragment_table_layout;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatactivity;
import android.content.Intent;
import android.graphics.Bitmap;
import android.net.Uri;
import android.os.Bundle;
import android.provider.MediaStore;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.Toast;
import com.bumptech.glide.Glide;
import com.deitel.fragment_table_layout.ModelClass.StudentRecord;
import com.google.android.gms.tasks.OnSuccessListener;
import com.google.firebase.auth.FirebaseAuth;
import com.google.firebase.auth.FirebaseUser;
import com.google.firebase.database.Datasnapshot;
import com.google.firebase.database.DatabaseError;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.google.firebase.database.Query;
import com.google.firebase.database.ValueEventListener;
import com.google.firebase.storage.FirebaseStorage;
import com.google.firebase.storage.StorageReference;
import com.google.firebase.storage.UploadTask;
import java.util.HashMap;
import java.util.Map;
public class Updata_Data extends AppCompatactivity {
private FirebaseAuth auth;
private FirebaseAuth.AuthStateListener authStateListener;
FirebaseDatabase database = FirebaseDatabase.getInstance();
DatabaseReference ref = database.getReference();
FirebaseStorage firebaseStorage;
private String UserId;
ImageView imageView;
EditText edit_name,edit_qualification,edit_contact,edit_age,edit_address,edit_city,edit_email;
Button btn_update,btn_discard;
String name,email,qualification,contact,age,address,city,Imagepath;
private static int PICK_IMAGE_REQUEST = 1;
Uri filepath;
private StorageReference storageReference;
public void onactivityResult(int requestCode,int resultCode,@Nullable Intent data) {
super.onactivityResult(requestCode,resultCode,data);
if (requestCode == PICK_IMAGE_REQUEST && resultCode == RESULT_OK ) {
filepath = data.getData();
}
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_updata__data);
auth = FirebaseAuth.getInstance();
firebaseStorage = FirebaseStorage.getInstance();
FirebaseUser user = auth.getcurrentUser();
UserId = user.getUid();
edit_name = findViewById(R.id.edit_name);
edit_qualification = findViewById(R.id.edit_qualification);
edit_cOntact= findViewById(R.id.edit_contact);
edit_age = findViewById(R.id.edit_age);
edit_address = findViewById(R.id.edit_address);
edit_city = findViewById(R.id.edit_city);
edit_email=findViewById(R.id.edit_email);
imageView = findViewById(R.id.edit_imageview);
btn_update = findViewById(R.id.btn_update);
btn_discard = findViewById(R.id.btn_discard);
btn_update.setOnClicklistener(new View.OnClicklistener() {
@Override
public void onClick(View v) {
try {
StudentRecord studentRecord = new StudentRecord();
studentRecord.name = edit_name.getText().toString();
studentRecord.email = edit_email.getText().toString();
studentRecord.qualification = edit_qualification.getText().toString();
studentRecord.cOntact= edit_contact.getText().toString();
studentRecord.age = edit_age.getText().toString();
studentRecord.address = edit_address.getText().toString();
studentRecord.city = edit_city.getText().toString();
final DatabaseReference databasereference = FirebaseDatabase.getInstance().getReference("Record").child(UserId);
databasereference.setvalue(studentRecord);
Toast.makeText(Updata_Data.this,"Data Update Successfully",Toast.LENGTH_SHORT).show();
} catch (Exception e) {
e.printStackTrace();
Toast.makeText(Updata_Data.this,"Date Update Error",Toast.LENGTH_SHORT).show();
}
}
});
Intent intent = getIntent();
name = intent.getStringExtra("name");
email = intent.getStringExtra("email");
qualification = intent.getStringExtra("qualification");
cOntact= intent.getStringExtra("contact");
age = intent.getStringExtra("age");
address = intent.getStringExtra("address");
city = intent.getStringExtra("city");
edit_name.setText(name);
edit_qualification.setText(qualification);
edit_contact.setText(contact);
edit_age.setText(age);
edit_address.setText(address);
edit_city.setText(city);
authStateListener = new FirebaseAuth.AuthStateListener() {
@Override
public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
}
};
ref.addValueEventListener( new ValueEventListener() {
@Override
public void onDataChange(@NonNull Datasnapshot datasnapshot) {
showdata(datasnapshot);
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
}
public void showdata(Datasnapshot datasnapshot) {
for (Datasnapshot ds : datasnapshot.getchildren()) {
try {
edit_name.setText(ds.child(UserId).getvalue(StudentRecord.class).getName());
edit_email.setText(ds.child(UserId).getvalue(StudentRecord.class).getEmail());
edit_qualification.setText(ds.child(UserId).getvalue(StudentRecord.class).getQualification());
edit_contact.setText(ds.child(UserId).getvalue(StudentRecord.class).getcontact());
edit_age.setText(ds.child(UserId).getvalue(StudentRecord.class).getage());
edit_city.setText(ds.child(UserId).getvalue(StudentRecord.class).getcity());
edit_address.setText(ds.child(UserId).getvalue(StudentRecord.class).getaddress());
// Glide.with(getapplicationContext()).load(ds.child(UserId).getvalue(StudentRecord.class).getImageadress()).into(imageView);
} catch (Exception e) {
e.printStackTrace();
}
}
}
}





推荐阅读
  • Iamtryingtomakeaclassthatwillreadatextfileofnamesintoanarray,thenreturnthatarra ... [详细]
  • Java太阳系小游戏分析和源码详解
    本文介绍了一个基于Java的太阳系小游戏的分析和源码详解。通过对面向对象的知识的学习和实践,作者实现了太阳系各行星绕太阳转的效果。文章详细介绍了游戏的设计思路和源码结构,包括工具类、常量、图片加载、面板等。通过这个小游戏的制作,读者可以巩固和应用所学的知识,如类的继承、方法的重载与重写、多态和封装等。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • 本文介绍了Android 7的学习笔记总结,包括最新的移动架构视频、大厂安卓面试真题和项目实战源码讲义。同时还分享了开源的完整内容,并提醒读者在使用FileProvider适配时要注意不同模块的AndroidManfiest.xml中配置的xml文件名必须不同,否则会出现问题。 ... [详细]
  • Android开发实现的计时器功能示例
    本文分享了Android开发实现的计时器功能示例,包括效果图、布局和按钮的使用。通过使用Chronometer控件,可以实现计时器功能。该示例适用于Android平台,供开发者参考。 ... [详细]
  • Go GUIlxn/walk 学习3.菜单栏和工具栏的具体实现
    本文介绍了使用Go语言的GUI库lxn/walk实现菜单栏和工具栏的具体方法,包括消息窗口的产生、文件放置动作响应和提示框的应用。部分代码来自上一篇博客和lxn/walk官方示例。文章提供了学习GUI开发的实际案例和代码示例。 ... [详细]
  • Go Cobra命令行工具入门教程
    本文介绍了Go语言实现的命令行工具Cobra的基本概念、安装方法和入门实践。Cobra被广泛应用于各种项目中,如Kubernetes、Hugo和Github CLI等。通过使用Cobra,我们可以快速创建命令行工具,适用于写测试脚本和各种服务的Admin CLI。文章还通过一个简单的demo演示了Cobra的使用方法。 ... [详细]
  • iOS Swift中如何实现自动登录?
    本文介绍了在iOS Swift中如何实现自动登录的方法,包括使用故事板、SWRevealViewController等技术,以及解决用户注销后重新登录自动跳转到主页的问题。 ... [详细]
  • iOS超签签名服务器搭建及其优劣势
    本文介绍了搭建iOS超签签名服务器的原因和优势,包括不掉签、用户可以直接安装不需要信任、体验好等。同时也提到了超签的劣势,即一个证书只能安装100个,成本较高。文章还详细介绍了超签的实现原理,包括用户请求服务器安装mobileconfig文件、服务器调用苹果接口添加udid等步骤。最后,还提到了生成mobileconfig文件和导出AppleWorldwideDeveloperRelationsCertificationAuthority证书的方法。 ... [详细]
  • Android系统源码分析Zygote和SystemServer启动过程详解
    本文详细解析了Android系统源码中Zygote和SystemServer的启动过程。首先介绍了系统framework层启动的内容,帮助理解四大组件的启动和管理过程。接着介绍了AMS、PMS等系统服务的作用和调用方式。然后详细分析了Zygote的启动过程,解释了Zygote在Android启动过程中的决定作用。最后通过时序图展示了整个过程。 ... [详细]
  • 本文介绍了brain的意思、读音、翻译、用法、发音、词组、同反义词等内容,以及脑新东方在线英语词典的相关信息。还包括了brain的词汇搭配、形容词和名词的用法,以及与brain相关的短语和词组。此外,还介绍了与brain相关的医学术语和智囊团等相关内容。 ... [详细]
  • 本文介绍了Hyperledger Fabric外部链码构建与运行的相关知识,包括在Hyperledger Fabric 2.0版本之前链码构建和运行的困难性,外部构建模式的实现原理以及外部构建和运行API的使用方法。通过本文的介绍,读者可以了解到如何利用外部构建和运行的方式来实现链码的构建和运行,并且不再受限于特定的语言和部署环境。 ... [详细]
  • 本文讨论了在openwrt-17.01版本中,mt7628设备上初始化启动时eth0的mac地址总是随机生成的问题。每次随机生成的eth0的mac地址都会写到/sys/class/net/eth0/address目录下,而openwrt-17.01原版的SDK会根据随机生成的eth0的mac地址再生成eth0.1、eth0.2等,生成后的mac地址会保存在/etc/config/network下。 ... [详细]
  • (三)多表代码生成的实现方法
    本文介绍了一种实现多表代码生成的方法,使用了java代码和org.jeecg框架中的相关类和接口。通过设置主表配置,可以生成父子表的数据模型。 ... [详细]
  • 本文介绍了MVP架构模式及其在国庆技术博客中的应用。MVP架构模式是一种演变自MVC架构的新模式,其中View和Model之间的通信通过Presenter进行。相比MVC架构,MVP架构将交互逻辑放在Presenter内部,而View直接从Model中读取数据而不是通过Controller。本文还探讨了MVP架构在国庆技术博客中的具体应用。 ... [详细]
author-avatar
江自流
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有