Код: Выделить всё
import android.content.Intent;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteException;
import android.database.sqlite.SQLiteOpenHelper;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.AdapterView;
import android.widget.CursorAdapter;
import android.widget.ListView;
import android.widget.SimpleCursorAdapter;
import android.widget.Toast;
import com.example.nikromantik.starbuzz.DessertFiles.DessertCategoryActivity;
import com.example.nikromantik.starbuzz.DrinkFiles.DrinkActivity;
import com.example.nikromantik.starbuzz.DrinkFiles.DrinkCategoryActivity;
import com.example.nikromantik.starbuzz.FoodFiles.FoodCategoryActivity;
public class TopLevelActivity extends AppCompatActivity {
private SQLiteDatabase db;
private Cursor favoriteCursor;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_top_level);
ListView listView = (ListView) findViewById(R.id.listOptions);
//слушатель для спискового представления
AdapterView.OnItemClickListener itemClickListener = new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> listView, View itemView, int position, long id) {
if (position == 0) {
Intent intent = new Intent(TopLevelActivity.this, DrinkCategoryActivity.class);
startActivity(intent);
}else if (position == 1) {
Intent intent = new Intent(TopLevelActivity.this, FoodCategoryActivity.class);
startActivity(intent);
}else if (position == 2){
Intent intent = new Intent(TopLevelActivity.this, DessertCategoryActivity.class);
startActivity(intent);
}
}
};
//Добавить слушателя к списковому представлению
listView.setOnItemClickListener(itemClickListener);
//Получить списковое представление любимых напитков
ListView listFavorite = (ListView) findViewById(R.id.list_favorites);
try {
SQLiteOpenHelper starbuzzDatabaseHelper = new StarbuzzDatabaseHelper(this);
db = starbuzzDatabaseHelper.getReadableDatabase();
//курсор, содержащий значения столбцов _id и NAME для записей, у которых FAVORITE = 1
favoriteCursor = db.query("DRINK",
new String[] {"_id", "NAME"}, "FAVORITE = 1", null, null, null, null);
CursorAdapter favoriteAdapter = new SimpleCursorAdapter(TopLevelActivity.this,
android.R.layout.simple_list_item_1, favoriteCursor, new String[] {"NAME"},
new int[] {android.R.id.text1}, 0);
listFavorite.setAdapter(favoriteAdapter);
}catch (SQLiteException e) {
Toast.makeText(this, "База данных не доступна", Toast.LENGTH_SHORT).show();
}
//Переход к DrinkActivity при выборе напитка
listFavorite.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Intent intent = new Intent(TopLevelActivity.this, DrinkActivity.class);
intent.putExtra(DrinkActivity.EXTRA_DRINKNO, (int)id);
startActivity(intent);
}
});
}
@Override
public void onDestroy(){
super.onDestroy();
favoriteCursor.close();
db.close();
}
@Override
public void onRestart(){
super.onRestart();
try {
SQLiteOpenHelper starbuzzDatabaseHelper = new StarbuzzDatabaseHelper(this);
db = starbuzzDatabaseHelper.getWritableDatabase();
Cursor newCursor = db.query("DRINK",
new String[] {"_id", "NAME"}, "FAVORITE = 1", null, null, null, null);
ListView listFavorites = (ListView) findViewById(R.id.list_favorites);
//Получить адаптер спискового представления
CursorAdapter adapter = (CursorAdapter) listFavorites.getAdapter();
//Заменить курсор, используемый адаптером курсора, новым
adapter.changeCursor(newCursor);
favoriteCursor = newCursor;
}catch (SQLiteException e) {
Toast.makeText(this, "База данных не доступна", Toast.LENGTH_SHORT).show();
}
}
}
Не кидайтесь кирпичами, я только учусь ) Объяснил как смог, если кто понял прошу помощи.