Back to project page android.
The source code is released under:
Copyright (c) 2013 ApiBootstraper Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Sof...
If you think the Android project android listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
package com.apibootstraper.mobile.activity; /* w ww .j a v a 2 s .c o m*/ import java.util.ArrayList; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.ArrayAdapter; import android.widget.ListView; import android.widget.Toast; import com.apibootstraper.core.Todo; import com.apibootstraper.mobile.R; import com.apibootstraper.mobile.TodoApplication; import com.apibootstraper.mobile.http.HTTPClient; import com.apibootstraper.mobile.http.HTTPResponse; import com.apibootstraper.mobile.repository.TodoRepository; import com.apibootstraper.mobile.view.TodoArrayAdapter; public class MainActivity extends Activity { private TodoApplication application; private ListView listView; private ArrayList<Todo> todos; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); application = (TodoApplication)getApplication(); listView = (ListView)findViewById(R.id.todoListView); listView.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> a, View v, int pos, long id) { if (todos.size() < id) { return; } Intent intent = new Intent(MainActivity.this, TodoActivity.class); Bundle b = new Bundle(); b.putSerializable("todo", todos.get(pos)); intent.putExtra("bundle", b); startActivity(intent); } }); // Create an empty list for waiting String[] list = {"No datas"}; listView.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, list)); // Temporary set credentials HTTPClient.getInstance().setBasicAuth("user@example.com", "password"); // Load the remote data refreshTodos(); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.activity_main, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { if (item.getItemId() == R.id.menu_refresh) { refreshTodos(); } else if (item.getItemId() == R.id.menu_add_todo) { startActivity(new Intent(MainActivity.this.getApplicationContext(), TodoFormActivity.class)); } return super.onOptionsItemSelected(item); } private void refreshTodos() { application.showProgressDialog(this); TodoRepository.findAll(new HTTPResponse<ArrayList<Todo>>() { @Override public void onSuccess(ArrayList<Todo> todos) { MainActivity.this.todos = todos; listView.setAdapter(new TodoArrayAdapter(MainActivity.this, todos)); } @Override public void onFailure(Throwable e) { Toast toast = Toast.makeText(MainActivity.this.getApplicationContext(), R.string.loading_error, Toast.LENGTH_LONG); toast.show(); } @Override public void onFinish() { MainActivity.this.application.hideProgressDialog(); } }); } }