@Override public View onCreateView( LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View rootView = inflater.inflate(R.layout.interpreter_log, container, false); expressionEntry = (EditText) rootView.findViewById(R.id.expression_entry); Typeface typeface = Typeface.createFromAsset(getActivity().getAssets(), "fonts/FreeMono.ttf"); expressionEntry.setTypeface(typeface); resultList = (ListView) rootView.findViewById(R.id.result_list_view); resultListAdapter = new ResultListAdapter(getActivity(), inflater, typeface); resultList.setAdapter(resultListAdapter); resultList.setOnItemClickListener( new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { resultEntryClicked(position); } }); resultListAdapter.registerDataSetObserver(new ResultUpdatedObserver()); Button sendButton = (Button) rootView.findViewById(R.id.send_expr_button); sendButton.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View v) { sendClicked(); } }); return rootView; }
private void resultEntryClicked(int position) { ResultListEntry entry = resultListAdapter.getResultListEntry(position); expressionEntry.setText(entry.getExpr()); }
@Override public void onDestroyView() { super.onDestroyView(); resultListAdapter.close(); }