adapter.notifyDataSetChanged();私はforループの値を取得していますが、値は画面に表示されていません。 私のjavaファイル:NotifyDataSetChangedが自分のコードで動作していません。
private static final String TAG_NAME="Notification";
String[] resultsAsString = {""};
ListView listView;
ArrayAdapter<String> adapter;
adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, resultsAsString);
ParseQuery<ParseObject> parseObjectParseQuery=new ParseQuery<ParseObject>("PushNotifications");
parseObjectParseQuery.findInBackground(new FindCallback<ParseObject>() {
@Override
public void done(List<ParseObject> objects, ParseException e) {
if (e==null){
resultsAsString = new String[objects.size()];
Log.d(TAG_NAME,"Objects size in MyService is:"+objects.size());
if(objects.size()>0){
Log.d(TAG_NAME,"Object size is "+objects.size());
for(int index = 0; index < objects.size(); index++){
resultsAsString[index] = objects.get(index).getString("Message");
Log.d(TAG_NAME,"result value is:"+resultsAsString[index]);
}
adapter.notifyDataSetChanged();
}else {
Log.d(TAG_NAME,"Object size is "+objects.size());
}
}
}
});
listView = (ListView) findViewById(R.id.notificatio_listView);
listView.setAdapter(adapter);
私のlogcat表示: オブジェクトがMyServiceで、サイズがある:3 オブジェクトのサイズは3 まずNottification 2番目のメッセージである 3番目のメッセージ
あなたは確実にobjects.size()が> 0ですか? – Opiatefuchs
確かにオブジェクトのサイズは3で、私はループのために見ることができます –
...アダプタをlistViewに設定した後、通常はadapterNotifyDataSetChanged()を呼び出します。 – Opiatefuchs