0
首先,我想爲我可憐的英語道歉。Firebase android studio從FirebaseListAdapter中移除項目
我剛開始使用android studio進行冒險,並按照一些教程進行操作,並對其中一個問題提出了疑問。我在很多地方尋找這個答案,但我沒有發現能夠滿足我的需求的地方。
我在android studio中創建了一個以FIREBASE作爲後端數據庫的聊天應用程序,但是我想添加一些額外的功能。即刪除項目。
我會在這裏發佈我的代碼,有人能告訴我如何才能從FirebaseListAdapter中刪除我按下的項目。
MainActivity:
public class MainActivity extends ListActivity {
private Firebase mFirebaseRef;
FirebaseListAdapter<ChatMessage> 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<ChatMessage>(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; }
}
「itemRef.remove();」當我嘗試這種方式不起作用,但是當我使用這種方法時:「itemRef.removeValue();」它工作正常。 – Apo
感謝您的支持。它在JavaScript API中被稱爲remove(),但顯然不在Android中。我在我的答案中更新了代碼。 –