温馨提示:本文翻译自stackoverflow.com,查看原文请点击:android - System.getProperty("line.separator") and " \n " Causes listview not to populate
android listview android-intent android-adapter

android - System.getProperty(“ line.separator”)和“ \ n”导致列表视图不填充

发布于 2020-03-27 16:00:00

在我的应用中,我有一个列表视图,

该视图由字符串数组填充

这是代码和解释,以帮助你们

所以字符串是

StaffList= Client + " Rates: " + Rates + " " + Staff + " Budget Hours: " + BudgetHoursPassData + " Member Budget: " + MemberBudgetPassData + "Notes" + NotesPassData;

然后将该字符串添加到数组

StaffArray.add(StaffList);

然后使用意图将此数组传递给另一个活动,并显示在列表视图中

public  void PassData(){
    Intent GoToReport=new Intent(getApplicationContext(), createProject.class);
    MemberBudgetPassData= MemberBudget.getText().toString();
    BudgetHoursPassData = budgetHours.getText().toString();
    NotesPassData= Notes.getText().toString();

    Toasty.info(popupActivity.this, StaffArray.toString(),Toasty.LENGTH_LONG).show();

    GoToReport.putStringArrayListExtra("Array",StaffArray);
    startActivity(GoToReport);
    Animatoo.animateCard(popupActivity.this);
}

这是适配器

final ArrayAdapter arrayAdapter =new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, Array);

if (Array == null){
    Toasty.info(createProject.this,"Select a Staff Memebr",Toasty.LENGTH_LONG).show();
}else{
    StaffListView.setAdapter(arrayAdapter);
}

现在,您可以返回同一活动并将第二个Item添加到数组中

public  void DialogBuilder(){
    Intent GoToReport=new Intent(getApplicationContext(), popupActivity.class);
    GoToReport.putStringArrayListExtra("Array", Array);
    startActivity(GoToReport);
    Animatoo.animateCard(createProject.this);
}

所以现在我的问题是列表用上面的代码填充得很好

但是随着我尽快在字符串中添加一个System.getProperty("line.separator")" \n "

StaffList= Client + "\n"+ " Rates: " + Rates + "\n"+ " " + Staff + "\n"+ " Budget Hours: " + BudgetHoursPassData + "\n"+ " Member Budget: " + MemberBudgetPassData + "\n"+ "Notes" + NotesPassData;

第二个列表/第三等项目不填充,所以只有第一项显示在列表中,但没有/nSystem.getProperty("line.separator")所有的项目都显示

查看更多

查看更多

提问者
Ruben Meiring
被浏览
18
Ruben Meiring 2020-02-03 17:14

我通过将Listview更改为Spinner并调用了Spinner适配器来解决了这个问题

  StaffList.setAdapter(new ArrayAdapter<>(createProject.this, android.R.layout.simple_spinner_dropdown_item, Array));