mirror of
https://github.com/lacerta-doc/Lacerta.git
synced 2026-11-02 11:37:37 +00:00
Merge pull request #11 from lacerta-doc/feature/library/add_document_list
Feature/library/add document list
This commit is contained in:
6 files changed
+43
-29
No files matched your search
@@ -1,5 +1,6 @@
|
||||
plugins {
|
||||
id 'com.android.library'
|
||||
id 'com.google.dagger.hilt.android'
|
||||
}
|
||||
|
||||
android {
|
||||
@@ -46,5 +47,9 @@ dependencies {
|
||||
|
||||
implementation project(':shared:ui')
|
||||
|
||||
implementation project(':model')
|
||||
|
||||
implementation project(':data')
|
||||
|
||||
|
||||
}
|
||||
@@ -10,12 +10,18 @@ import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import one.nem.lacerta.model.document.DocumentMeta;
|
||||
|
||||
public class DocumentAdapter extends RecyclerView.Adapter<DocumentAdapter.DocumentViewHolder> {
|
||||
|
||||
private List<String> documentList;
|
||||
private List<DocumentMeta> documentMetas;
|
||||
|
||||
public DocumentAdapter(List<String> documentList) {
|
||||
this.documentList = documentList;
|
||||
public DocumentAdapter(List<DocumentMeta> documentMetas) {
|
||||
// nullの場合に例外を発生させる
|
||||
if (documentMetas == null) {
|
||||
throw new IllegalArgumentException("DocumentMetas list cannot be null or empty");
|
||||
}
|
||||
this.documentMetas = documentMetas;
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@@ -27,12 +33,15 @@ public class DocumentAdapter extends RecyclerView.Adapter<DocumentAdapter.Docume
|
||||
|
||||
@Override
|
||||
public void onBindViewHolder(@NonNull DocumentViewHolder holder, int position) {
|
||||
holder.title.setText(documentList.get(position));
|
||||
DocumentMeta documentMeta = documentMetas.get(position);
|
||||
if (documentMeta != null) {
|
||||
holder.title.setText(documentMeta.getTitle());
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getItemCount() {
|
||||
return documentList.size();
|
||||
return documentMetas.size();
|
||||
}
|
||||
|
||||
class DocumentViewHolder extends RecyclerView.ViewHolder {
|
||||
@@ -40,7 +49,7 @@ public class DocumentAdapter extends RecyclerView.Adapter<DocumentAdapter.Docume
|
||||
|
||||
DocumentViewHolder(View itemView) {
|
||||
super(itemView);
|
||||
title = itemView.findViewById(R.id.debug_menu_item_title);
|
||||
title = itemView.findViewById(R.id.debug_menu_item_title); // 適切な id に変更する
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+3
@@ -8,6 +8,9 @@ import android.widget.TextView;
|
||||
import androidx.appcompat.app.AppCompatActivity;
|
||||
|
||||
// LibraryArchiveFragment.java
|
||||
|
||||
//画面変移用のコード
|
||||
//Fragmentへのデータの受け渡し機能
|
||||
public class LibraryArchiveFragment extends AppCompatActivity {
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
|
||||
@@ -8,6 +8,7 @@ import android.widget.TextView;
|
||||
|
||||
import androidx.fragment.app.Fragment;
|
||||
|
||||
//Fragmentにデータを受け渡す機能
|
||||
public class LibraryDocFragment extends Fragment {
|
||||
|
||||
private TextView textView; // フィールドとして TextView を定義
|
||||
|
||||
+18
-5
@@ -13,17 +13,29 @@ import android.view.ViewGroup;
|
||||
import android.widget.ArrayAdapter;
|
||||
import android.widget.ListView;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import javax.inject.Inject;
|
||||
|
||||
import dagger.hilt.android.AndroidEntryPoint;
|
||||
import one.nem.lacerta.data.Document;
|
||||
import one.nem.lacerta.model.document.DocumentMeta;
|
||||
import one.nem.lacerta.model.document.tag.DocumentTag;
|
||||
|
||||
/**
|
||||
* A simple {@link Fragment} subclass.
|
||||
* Use the {@link LibraryTopFragment#newInstance} factory method to
|
||||
* create an instance of this fragment.
|
||||
*/
|
||||
@AndroidEntryPoint
|
||||
public class LibraryTopFragment extends Fragment {
|
||||
|
||||
@Inject
|
||||
Document document;
|
||||
|
||||
// TODO: Rename parameter arguments, choose names that match
|
||||
// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER
|
||||
private static final String ARG_PARAM1 = "param1";
|
||||
@@ -76,13 +88,14 @@ public class LibraryTopFragment extends Fragment {
|
||||
LinearLayoutManager layoutManager = new LinearLayoutManager(getContext());
|
||||
documentRecyclerView.setLayoutManager(layoutManager);
|
||||
|
||||
List<String> documentList = new ArrayList<>();
|
||||
documentList.add("Document A");
|
||||
documentList.add("Document B");
|
||||
documentList.add("Document C");
|
||||
//データを取得
|
||||
|
||||
List<DocumentMeta> metas = document.getAllDocumentMetas(100);
|
||||
|
||||
Toast.makeText(getContext(), "Documents: " + Integer.toString(metas.size()), Toast.LENGTH_LONG).show();
|
||||
|
||||
// Create and set the adapter
|
||||
DocumentAdapter adapter = new DocumentAdapter(documentList);
|
||||
DocumentAdapter adapter = new DocumentAdapter(metas);
|
||||
documentRecyclerView.setAdapter(adapter);
|
||||
|
||||
// Use a LinearLayoutManager to specify the layout
|
||||
|
||||
Reference in new issue
Block a user