当前位置:  开发笔记 > Android > 正文

Firebase安卓工作室从FirebaseListAdapter中删除项目

如何解决《Firebase安卓工作室从FirebaseListAdapter中删除项目》经验,为你挑选了1个好方法。

首先,我想为我可怜的英语道歉.

我刚刚开始使用android studio进行冒险并遵循一些教程,我对其中一个有疑问.我在很多地方寻找这个答案,但我发现没有一个能满足我的需求.

我在android studio中创建了一个聊天应用程序,使用FIREBASE作为后端数据库,但我想为它添加一些额外的功能.即删除项目.

我会在这里发布我的代码,有人可以告诉我如何能够删除我从FirebaseListAdapter中按下的项目.

主要活动:

public class MainActivity extends ListActivity {
private Firebase mFirebaseRef;
FirebaseListAdapter mListAdapter;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);


    Firebase.getDefaultConfig().setPersistenceEnabled(true);
    Firebase.setAndroidContext(this);

    mFirebaseRef = new Firebase("https://shining-heat-1471.firebaseio.com");


    final EditText textEdit = (EditText) this.findViewById(R.id.text_edit);
    Button sendButton = (Button) this.findViewById(R.id.send_button);

    sendButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            String text = textEdit.getText().toString();
            ChatMessage message = new ChatMessage("Android User", text);
            mFirebaseRef.push().setValue(message);
            textEdit.setText("");
        }
    });


    mListAdapter = new FirebaseListAdapter(this, ChatMessage.class,
            android.R.layout.two_line_list_item, mFirebaseRef) {
        @Override
        protected void populateView(View v, ChatMessage model) {
            ((TextView)v.findViewById(android.R.id.text1)).setText(model.getName());
            ((TextView)v.findViewById(android.R.id.text2)).setText(model.getText());
        }
    };
    setListAdapter(mListAdapter);
}

@Override
protected void onDestroy() {
    super.onDestroy();
    mListAdapter.cleanup();
}

ChatMessage:

public class ChatMessage {
private String name;
private String text;

public ChatMessage() {
    // necessary for Firebase's deserializer
}
public ChatMessage(String name, String text) {
    this.name = name;
    this.text = text;
}

public String getName() { return name; }

public String getText() { return text; }
}

Frank van Pu.. 7

我要把它留给你要弄清楚用户点击什么项目(但是这可能是一个良好的开端).

一旦您知道用户点击的项目的位置,您就可以使用以下方法轻松地将其从Firebase中删除:

Firebase itemRef = adapter.getRef(position);
itemRef.removeValue();

这将从数据库列表适配器中删除该项.



1> Frank van Pu..:

我要把它留给你要弄清楚用户点击什么项目(但是这可能是一个良好的开端).

一旦您知道用户点击的项目的位置,您就可以使用以下方法轻松地将其从Firebase中删除:

Firebase itemRef = adapter.getRef(position);
itemRef.removeValue();

这将从数据库列表适配器中删除该项.

推荐阅读
郑小蒜9299_941611_G
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有