ブックマークの登録と登録したブックマークを見れるようにする・・・。
ただし、
Android 6.0 Changes | Android Developers
Android 6で元々持っていた標準的なブックマーク機能がなくなったので、自前のDBで管理し、前回のブックマークアクティビティでそのDBをリスト表示で見れるようにする・・・。
まずは、DBの準備・・・。
Java Classで、
DBHelperというのを追加・・・。
zinc1.dbにbookmarkテーブルを作成・・・。
ページ名のnameとURLのurlというカラムを持つ・・・。
_idは基本使わない・・・。
次に、DBにあるブックマーク情報を表示するリスト・・・。
まずは、アイテムのレイアウト・・・。
で、
UrlListItem・・・。
nameとurl・・・。
あと、アダプタ・・・。
で、
UrlListAdapter・・・。
R.id.url_list_item_nameというTextViewにname, R.id.url_list_item_urlというTextViewにurlを表示する・・・。
アイテムのレイアウトは、
で、
url_list_itemは、
TextViewを縦に・・・。
次は、リンクを登録するダイアログのレイアウト・・・。
で、
url_edit_dialogは、
ラベル用TextViewと入力するEditTextのペアをnameとurlの分用意し、縦に並べる・・・。
あと、登録のメニューアイテムを追加する・・・。
action_bookmark_add_textは、
"ブックマークの登録"・・・。
ブックマークアクティビティのレイアウトは、
ステータス用のTextViewとブックマークリストのListView・・・。
さて、登録はMainActivityから・・・。
DBHelperのhlprとSQLiteDatabaseのsqliteがいるのでメンバフィールドに・・・。
メニューアイテムR.id.action_bookmark_addが選択されたら、url_edit_dialogからAlertDialog作成・・・。
WebViewからタイトルとURLを持ってきて、EditTextにセット・・・。
登録ボタンを押された場合は、bookmarkテーブルにinsert・・・。
キャンセルは何もしない・・・。
今度は、BookmarkActivity側のリスト表示・・・。
bookmarkListをlvBookmark表示するための準備・・・。
これだけだと空なので、
DBからブックマーク情報を取り出して、bookmarkListに入れる・・・。
bookmarkListの要素数が0なら、R.id.bookmark_statusの表示は"ブックマークはありません"・・・。
1個でもあったら、件数を表示・・・。
最後にアダプタ更新して、挿入後の状態がリストビューに反映される・・・。
まず、"ブックマークの管理"を選択・・・。
まだ、この状態では、ブックマークがない・・・。
URLを入力して、Button1を押す・・・。
表示されたので、
"ブックマークの登録"を押す・・・。
ダイアログが出てきたので、これで登録・・・。
"ブックマークの管理"をもう一度押すと、
さっきのgoogleが登録されている・・・。
1件のブックマーク・・・。
https://github.com/bg1bgst333/Zinc/tree/develop/android/empty_activity/android_studio/src/Zinc