0
목록을 작성하고 각 행마다 다른 인 텐트를 호출해야합니다. 누군가 코드에서 무엇을 작성해야하는지 말해 줄 수 있습니까? 지금 토스트는 내가 그 전화를 걸고 있음을 나타냅니다.목록의 각 줄에 새로운 의도를 작성하는 방법은 무엇입니까?
public class Listview extends Activity {
static ListView listView;
static public class BackgroundWorker extends AsyncTask<Void, Person, Void> {
@SuppressWarnings("unchecked")
@Override
protected void onPreExecute() {
// Prima di iniziare a inserire gli elementi svuotiamo l'adapter
((ArrayAdapter<Person>) listView.getAdapter()).clear();
super.onPreExecute();
}
@Override
protected Void doInBackground (Void... params) {
// Qui dentro si possono mettere le operazioni che potrebbero
// rallentare il caricamento della listview, come ad sempio il
// caricamento da db degli oggetti
Person[] people = { new Person("Privacy", "", R.drawable.creep_1) };
Person[] people1 = {new Person("Visualizzazione", "", R.drawable.creep_2)};
Person[] people2= { new Person("Notifiche", "", R.drawable.creep_3)};
// riempimento casuale della lista delle persone
Random r = new Random();
for (int i = 0; i < 1; i++) {
// Pubblichiamo il progresso
publishProgress(people);
publishProgress(people1);
publishProgress(people2);
}
return null;
}
@SuppressWarnings("unchecked")
@Override
protected void onProgressUpdate (Person... values) {
// Aggiungiamo il progresso pubblicato all'adapter
((ArrayAdapter<Person>) listView.getAdapter()).add(values[0]);
super.onProgressUpdate(values);
}
}
@Override
public void onCreate (Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
listView = (ListView) findViewById(R.id.personListView);
listView.setAdapter(new PersonAdapter(this, R.layout.row_item, new ArrayList<Person>()));
listView.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Person p = (Person) parent.getItemAtPosition(position);
Toast.makeText(
view.getContext(),
"Click sulla riga " + p.getFullName(),
Toast.LENGTH_SHORT
).show();
}
});
new BackgroundWorker().execute();
}
}
감사합니다. !!! :디 – user1023571