私はデータベースからのデータを表示するリストビューを作成しました。 ListViewの各行には、CheckBoxを削除するボタンとそれを編集するボタンが追加されています。 私の問題は、ボタンがクリックされ、どのように私のsqliteデータベースコマンドのidを変換して使用する行以上のIDを取得することです? 長いクリックリスナーの設定は、CheckBoxがあるときに行が長くクリックすると応答しないため、少し問題がありました。そのため、ボタンを存在させて機能させます。 ありがとうListViewの各行のボタンを使用してsqliteデータベースの行を削除します
-1
A
答えて
0
最初に私はコードの構造を説明し、その後私が見つけた解決法を説明します。
このアプリケーションは、ListViewを含む主なアクティビティで構成されています。次に、データベースを処理するSqliteOpenHelperのクラスがあり、データベース内の変数のセッターメソッドとゲッターメソッドを含むTaskProviderクラスと、ListViewのカスタムアダプターであるTaskAdapterがあります。 私が直面していた問題は、その行に存在するボタンによって特定の行に対処できないという事実でした。ここで私はそれをやった方法です:
SqliteOpenHelperクラスで最初に、方法は、アダプタクラスのGetViewメソッド、ボタンに続いて、where句とSqliteDataBase.delete方法
public void deleteTask (SQLiteDatabase db , String deleted){
String selection = Contracts.achieveTaskClass.ID+" LIKE ?";
String[] selectionArgs = {deleted};
db.delete(Contracts.achieveTaskClass.ACHIEVETASK_TABLE,selection,selectionArgs);
}
を保存するために作成されます発見された行を削除するように設定され、次のsetOnClickListenerが追加された:
objectHolder.taskDeleteButton = (Button) row.findViewById(R.id.list_view_delete_button);
objectHolder.taskDeleteButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String deleted;
deleted = ((TaskProvider) getItem(position)).getId();
Sqldb sqldb = new Sqldb(getContext());
SQLiteDatabase db = sqldb.getReadableDatabase();
sqldb.deleteTask(db,deleted);
}
});
関連する問題
- 1. ボタンをクリックしてsqliteデータベースの行を削除する
- 2. ボタンを各行で使用してDataGridViewから行を削除
- 3. ListView(WPF)を使用してデータベースから行を削除する
- 4. テーブルビューの行を削除し、Sqliteを使用してデータベース上のデータを削除します
- 5. フローティングコンテキストメニューを使用してSQLite行を削除します
- 6. seletect行フォームのlistviewを取得し、Sqliteデータベースから削除する方法
- 7. MySQLの各行にPHPを使用してボタンを削除する方法は?
- 8. FMDBのSQLiteデータベースから行を削除
- 9. タスクメソッドを使用して、各タスク/行のDataGrid/listviewの行を更新します。
- 10. JavaScriptを使用してテーブル内の各行を削除する
- 11. SQLiteを使用してカスタムリストビューの行を削除
- 12. 行の削除ボタンでListViewから行を削除する方法
- 13. javaを使用してMySQLデータベースの行を削除する
- 14. カスタムアダプタを使用したListView。 firebaseデータベース内の子供を削除するボタン
- 15. Xamarin Android C#:SQLiteデータベースのデータを使用してListViewカスタム行にデータを挿入
- 16. JqGrid各行の編集と削除ボタン
- 17. カスタムカーソルクラスを使用してListViewに削除ボタンを追加する
- 18. コードワーカーでアプリケーションsqliteデータベースを削除して再実行
- 19. ボタンを使用して特定の行にはない行を削除する
- 20. Django SQLiteデータベースのデータベース行を削除する
- 21. 選択した行を削除するためのボタンの削除frow javafx tableViewとSQLiteのテーブル行
- 22. jpaを使用してデータベースから行を削除する
- 23. jqueryを使用してボタンをクリックした行を削除します
- 24. 私はlistviewの行を削除したいcursor.requeryを使わずにその行のボタンを使って削除したい
- 25. ボタンを使用してデータベースから行を削除しようとしています
- 26. AndroidのSQLiteデータベースから行を削除できません
- 27. データベースを削除します。android sqlite
- 28. googlesheetapiを使用してgooglesheetの行を削除します
- 29. チェックボックスを使用してデータベース内の行を挿入または削除する
- 30. 次のボタンを使用して空のSQLite行を渡します
で、既存のオブジェクトコード –
がgetViewメソッド()カスタムアダプターの方法で削除ボタンにonClickListenerセット追加し、id値を取得してください。特定getViewメソッドで与えられた位置を取得し、そのIDを使用してデータベースから行を削除すると、テーブルにユニークなIDが必要です。また、オブジェクト・クラスにもIDを入れる必要があるため、 。 –
私はSugarORM、http://codex2android.blogspot.in/2016/03/sugar-orm-with-sqlite-android-part-i.htmlを使用して私のblogpostで同じものを実装しました。助けて欲しいと思っています – HourGlass