我必须制作一个列表,并为每一行调用不同的意图。有人能告诉我在代码中写些什么吗?现在吐司似乎只是表明我正在呼唤那条线。
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();
}
}
答案 0 :(得分:0)
您可以使用switch
语句,具体取决于ListView的position
并调用您想要的活动。