新しい行を作成したい場合は、行を作成する必要がある場合はどこでも\n
を挿入する必要があります。しかし、私が得るのは、ファイアベースデータベースにすでにある行がないテキストです。誰かがそれを修正する方法を教えてもらえますか?例えば、もし私がデータベースのhello \ nの世界にいるならば。私はhello world
としてそれを得る。私が本当にそれを得るべきときfirebaseデータベースからtextviewにデータを取得するときに改行を作成する方法は?
hello
world
私はfirebaseまたは私のソースコードで何かを変更する必要がありますか?
これは私がfirebase
private void getData(){
firebaseDatabaseInstance = FirebaseDatabase.getInstance();
// get reference to 'users' node
booksInstance = firebaseDatabaseInstance.getReference("monzmat");
books.clear();
books.addAll(db.getAllBookMonzmat());
adapter = new qamoosAdapter(this, books);
gridView.setAdapter(adapter);
booksInstance.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
storeData(dataSnapshot);
}
@Override
public void onCancelled(DatabaseError error) {
// Failed to read value
Log.w(TAG, "Failed to read value.", error.toException());
}
});
booksInstance.orderByChild("id").addChildEventListener(new ChildEventListener() {
@Override
public void onChildAdded(DataSnapshot dataSnapshot, String s) {
qamoosData book = new qamoosData(
(String) dataSnapshot.child("id").getValue(),
(String) dataSnapshot.child("title").getValue(),
(String)dataSnapshot.child("content").getValue()
);
db.insertMonzmat(book);
reloadData();
}
@Override
public void onChildChanged(DataSnapshot dataSnapshot, String s) {
qamoosData book = new qamoosData(
(String) dataSnapshot.child("id").getValue(),
(String) dataSnapshot.child("title").getValue(),
(String)dataSnapshot.child("content").getValue()
);
db.updateABookMonzmat(book);
reloadData();
}
@Override
public void onChildRemoved(DataSnapshot dataSnapshot) {
qamoosData book = new qamoosData(
(String) dataSnapshot.child("id").getValue(),
(String) dataSnapshot.child("title").getValue(),
(String)dataSnapshot.child("content").getValue()
);
db.deleteABookMonzmat(book.getId());
reloadData();
}
@Override
public void onChildMoved(DataSnapshot dataSnapshot, String s) {
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
}
private void storeData(DataSnapshot snapshot) {
books.clear();
for (DataSnapshot alert: snapshot.getChildren()) {
qamoosData book = new qamoosData(
(String)alert.child("id").getValue(),
(String)alert.child("title").getValue(),
(String)alert.child("content").getValue()
);
db.insertMonzmat(book);
}
books.addAll(db.getAllBookMonzmat());
// Constants.hideDialog();
adapter.notifyDataSetChanged();
}
からデータを取得する方法これは、あなたが特別な文字列を入れて、データを取得した後、それを置き換えることができ、私のアダプタ
public class qamoosAdapter extends BaseAdapter {
Activity activity;
ArrayList<qamoosData> arrayList = new ArrayList<>();
ArrayList<qamoosData> filterList = new ArrayList<>();
LayoutInflater mLayoutInflater;
DBHandler db;
Storage storage;
public qamoosAdapter(Activity context, ArrayList<qamoosData> bookDatas){
this.activity = context;
this.arrayList = bookDatas;
this.db = new DBHandler(context);
this.filterList= bookDatas;
mLayoutInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
storage = SimpleStorage.getInternalStorage(context);
}
@Override
public int getCount() {
return arrayList.size();
}
@Override
public Object getItem(int position) {
return arrayList.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
qamoosAdapter.ViewHolder holder = new qamoosAdapter.ViewHolder();
if (convertView == null) {
convertView = mLayoutInflater.inflate(R.layout.fragment_qamoos, null);
holder.name = (TextView) convertView.findViewById(R.id.bookName2_makotab_fragment);
if(holder.name.getText().toString().contains("\n")){
}
convertView.setTag(holder);
} else {
holder = (qamoosAdapter.ViewHolder) convertView.getTag();
}
holder.name.setText(arrayList.get(position).getTitle());
return convertView;
}
public class ViewHolder{
ImageView image;
TextView name;
}
}
あなたはFirebaseにデータと取得するコードを追加するコードを投稿することができますそれ? –
コードを追加してください。 –
私が追加したコードを見てください – abdo