mirror of
https://github.com/lacerta-doc/Lacerta.git
synced 2024-11-26 09:43:15 +00:00
Laibraryが表示できるようにコードを書き換えた。
・nullを検出して安全性を高めた ・RecyclerView.Adapterを使用するためのコードを追加
This commit is contained in:
parent
6d71322982
commit
ac2001142f
|
@ -1,4 +1,3 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project version="4">
|
<project version="4">
|
||||||
<component name="ExternalStorageConfigurationManager" enabled="true" />
|
<component name="ExternalStorageConfigurationManager" enabled="true" />
|
||||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" project-jdk-name="jbr-17" project-jdk-type="JavaSDK">
|
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" project-jdk-name="jbr-17" project-jdk-type="JavaSDK">
|
||||||
|
|
|
@ -2,13 +2,17 @@ package one.nem.lacerta.feature.library;
|
||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
|
|
||||||
|
import androidx.annotation.NonNull;
|
||||||
import androidx.fragment.app.Fragment;
|
import androidx.fragment.app.Fragment;
|
||||||
|
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||||
|
import androidx.recyclerview.widget.RecyclerView;
|
||||||
|
|
||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
import android.widget.ArrayAdapter;
|
import android.widget.ArrayAdapter;
|
||||||
import android.widget.ListView;
|
import android.widget.ListView;
|
||||||
|
import android.widget.TextView;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
@ -60,27 +64,70 @@ public class LibraryTopFragment extends Fragment {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public class DocumentAdapter extends RecyclerView.Adapter<DocumentAdapter.DocumentViewHolder> {
|
||||||
|
|
||||||
|
private List<String> documentList;
|
||||||
|
|
||||||
|
public DocumentAdapter(List<String> documentList) {
|
||||||
|
this.documentList = documentList;
|
||||||
|
}
|
||||||
|
|
||||||
|
@NonNull
|
||||||
@Override
|
@Override
|
||||||
public View onCreateView(LayoutInflater inflater, ViewGroup container,
|
public DocumentViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
||||||
Bundle savedInstanceState) {
|
View view = LayoutInflater.from(parent.getContext()).inflate(android.R.layout.simple_list_item_1, parent, false);
|
||||||
|
return new DocumentViewHolder(view);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onBindViewHolder(@NonNull DocumentViewHolder holder, int position) {
|
||||||
|
holder.bind(documentList.get(position));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getItemCount() {
|
||||||
|
return documentList.size();
|
||||||
|
}
|
||||||
|
|
||||||
|
class DocumentViewHolder extends RecyclerView.ViewHolder {
|
||||||
|
private final TextView textView;
|
||||||
|
|
||||||
|
DocumentViewHolder(View itemView) {
|
||||||
|
super(itemView);
|
||||||
|
textView = itemView.findViewById(android.R.id.text1);
|
||||||
|
}
|
||||||
|
|
||||||
|
void bind(String document) {
|
||||||
|
textView.setText(document);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
|
||||||
// Inflate the layout for this fragment
|
// Inflate the layout for this fragment
|
||||||
View view = inflater.inflate(R.layout.fragment_library_top, container, false);
|
View view = inflater.inflate(R.layout.fragment_library_top, container, false);
|
||||||
|
|
||||||
// Use view.findViewById instead of findViewById
|
// Use view.findViewById instead of findViewById
|
||||||
ListView documentListView = view.findViewById(R.id.document_list);
|
RecyclerView documentRecyclerView = view.findViewById(R.id.document_list);
|
||||||
List<String> documentList = new ArrayList<>();
|
|
||||||
|
|
||||||
|
|
||||||
|
if (documentRecyclerView != null) {
|
||||||
|
List<String> documentList = new ArrayList<>();
|
||||||
documentList.add("Document A");
|
documentList.add("Document A");
|
||||||
documentList.add("Document B");
|
documentList.add("Document B");
|
||||||
documentList.add("Document C");
|
documentList.add("Document C");
|
||||||
|
|
||||||
// レイアウトリソースを指定する(例: simple_list_item_1)
|
// Create and set the adapter
|
||||||
ArrayAdapter<String> adapter = new ArrayAdapter<>(
|
DocumentAdapter adapter = new DocumentAdapter(documentList);
|
||||||
getActivity(), // 修正: requireActivity() ではなく getActivity() を使用
|
documentRecyclerView.setAdapter(adapter);
|
||||||
android.R.layout.simple_list_item_1,
|
|
||||||
documentList);
|
|
||||||
|
|
||||||
documentListView.setAdapter(adapter);
|
// Use a LinearLayoutManager to specify the layout
|
||||||
|
LinearLayoutManager layoutManager = new LinearLayoutManager(requireContext());
|
||||||
|
documentRecyclerView.setLayoutManager(layoutManager);
|
||||||
|
}
|
||||||
|
|
||||||
return view;
|
return view;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user