많은 조각이있는 주요 활동이 있으며 그 중 하나에는 목록보기가 포함되어 있으며 어댑터는 homeworkListAdapter
이고이 어댑터는 homeworkItems
에있는 항목을 모두 표시합니다. 내 활동이 다른 활동을 열어 (HomeworkAddActivity
, 사용자로부터 문자열을 가져오고 배열 homeworkItems
에 넣습니다.이 모든 작업은 독립적으로 각 단계를 검사했기 때문에 가능합니다. 그러나이 새 항목으로 목록보기를 업데이트하려고하면 .notifyDataSetChanged
)은 업데이트하지 않습니다, 나는 도와주세요 ~ 4 시간 동안이 문제를 해결하기 위해 노력하고있다.사용자가 활동에 응답 할 때 내 목록보기가 업데이트되지 않습니까?
코드
MainActivity
public static ArrayAdapter<String> homeworkListAdapter;
public static ArrayList<String> homeworkItems;
....
protected void onCreate(Bundle savedInstanceState) {
....
homeworkItems = new ArrayList<String>();
homeworkListAdapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, homeworkItems);
....
public static class HomeworkListViewFragment extends Fragment {
....
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(
R.layout.fragment_homework_listview, container, false);
homeworkListView = (ListView) rootView
.findViewById(R.id.homework_listview);
homeworkListView.setAdapter(homeworkListAdapter);
return rootView;
}
HomeworkAddActivity
public class HomeworkAddActivity extends ActionBarActivity {
....
public void buttonAddHomework(View v) {
NavUtils.navigateUpFromSameTask(this);
EditText editText = (EditText) findViewById(R.id.text_new_homework_name);
String homeworkItem = (String) editText.getText().toString();
if (!(TextUtils.isEmpty(homeworkItem))) {
//MainActivity.homeworkList.addItem(homeworkItem);
MainActivity.homeworkItems.add(homeworkItem);
MainActivity.homeworkListAdapter.notifyDataSetChanged();
}
}
}
buttonAddHomework()에 완전히 다시 추가하려고합니다. 때때로 NotifyDataSetChanged()는 알려지지 않은 이유로 작동하지 않을 것입니다 ... – Stan
다른 코드로 시도했습니다. 그러나 다시 시도 할 것입니다. 그러나 훨씬 더 깔끔하게/올바르게 수행되었습니다. – ollie299792458
다시 제안한 것을 시도했지만, 그것도 여전히 목록을 업데이 트하지 못했습니다 – ollie299792458