プログラミング初心者です。
現在AndroidstudioにてTODOリストを作っています。
ListViewのリストの背景色をタスクの完了・未完了で変えたいのですが、
どういうコードを書けばいいかわかりません。
(タスク完了のものをグレーアウトしたいです)
なるべく簡単なものがいいのですが、ご教授頂けると嬉しいです。
public class MainActivity extends AppCompatActivity { List<Integer> memoListId = new ArrayList<>(); List<String> memoList = new ArrayList<>(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ListView lvMemo = findViewById(R.id.listview); DatabaseHelper helper = new DatabaseHelper(this); SQLiteDatabase db = helper.getWritableDatabase(); try { //radioに格納されている完了・未完了の値(降順) String sql = "SELECT * FROM memo ORDER BY radio DESC"; Cursor cursor = db.rawQuery(sql, null); while (cursor.moveToNext()) { //カラムのインデックス値を取得 int idxId = cursor.getColumnIndex("_id"); int idxTitle = cursor.getColumnIndex("title"); //カラムのインデックス値を元に実際のデータを取得 memoListId.add((int) cursor.getInt(idxId)); memoList.add(cursor.getString(idxTitle)); } } finally { db.close(); } ArrayAdapter<String> adapter = new ArrayAdapter<>(this, simple_list_item_1, memoList); //リストビューにアダプタオブジェクトを設定 lvMemo.setAdapter(adapter); lvMemo.setOnItemClickListener(new AdapterView.OnItemClickListener() { public void onItemClick(AdapterView<?> parent, View view, int position, long id) { int _memoId = memoListId.get(position); //インテントの作成 Intent intent = new Intent(MainActivity.this, EditActivity.class); //値を格納 intent.putExtra("MEMO_ID",_memoId); //画面遷移 startActivity(intent); } }); } }
あなたの回答
tips
プレビュー