This repository has been archived on 2022-02-10. You can view files and clone it, but cannot push or open issues or pull requests.
morse-converter-android/app/src/main/java/de/marcelkapfer/morseconverter/writtenMorseListFragment.java

74 lines
2.5 KiB
Java

package de.marcelkapfer.morseconverter;
import android.content.res.AssetManager;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
public class writtenMorseListFragment extends Fragment {
private RecyclerView mRecyclerView;
private RecyclerView.Adapter mAdapter;
private RecyclerView.LayoutManager mLayoutManager;
private String[] myDataset;
private static final String TAG = "RecyclerViewFragment";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState){
View rootView = inflater.inflate(R.layout.fragment_written_morse_list, container, false);
rootView.setTag(TAG);
mRecyclerView = (RecyclerView) rootView.findViewById(R.id.wm_recycler);
mRecyclerView.setHasFixedSize(true);
mLayoutManager = new LinearLayoutManager(getActivity());
mRecyclerView.setLayoutManager(mLayoutManager);
getDataset();
mAdapter = new MyAdapter(myDataset);
mRecyclerView.setAdapter(mAdapter);
return rootView;
}
private void getDataset(){
ArrayList<String> dataset = new ArrayList<>();
String datastring = "";
AssetManager astmgr = getActivity().getAssets();
try {
InputStream data = astmgr.open("codes.txt");
StringBuilder buf = new StringBuilder();
BufferedReader in =
new BufferedReader(new InputStreamReader(data, "UTF-8"));
String str;
while ((str = in.readLine()) != null) {
buf.append(str);
}
in.close();
datastring =buf.toString();
} catch (IOException e) {
e.printStackTrace();
}
for(int c = 0; datastring.length() > 1; c++){
int pos = datastring.indexOf(";");
dataset.add(datastring.substring(0, pos));
datastring = datastring.substring(pos + 1);
myDataset = dataset.toArray(new String[dataset.size()]);
}
}
}