Advertisement
Guest User

Untitled

a guest
May 20th, 2019
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5 4.42 KB | None | 0 0
  1. package android.irhad.android1.fragments;
  2.  
  3.  
  4. import android.app.DialogFragment;
  5. import android.content.Context;
  6. import android.irhad.android1.Helper.MyRunnable;
  7. import android.irhad.android1.data.KorisnikVM;
  8. import android.irhad.android1.data.Storage;
  9. import android.os.Bundle;
  10. import android.support.v4.app.Fragment;
  11. import android.view.LayoutInflater;
  12. import android.view.View;
  13. import android.view.ViewGroup;
  14.  
  15. import android.irhad.android1.R;
  16. import android.widget.AdapterView;
  17. import android.widget.BaseAdapter;
  18. import android.widget.Button;
  19. import android.widget.EditText;
  20. import android.widget.ListView;
  21. import android.widget.TextView;
  22.  
  23. import java.util.List;
  24.  
  25. /**
  26.  * A simple {@link Fragment} subclass.
  27.  * Use the {@link PretragaDialogFragment#newInstance} factory method to
  28.  * create an instance of this fragment.
  29.  */
  30. public class PretragaDialogFragment extends DialogFragment {
  31.  
  32.     public static final String NEKI_KEY = "neki_key";
  33.  
  34.     private static final String ARG_PARAM1 = "param1";
  35.     private static final String ARG_PARAM2 = "param2";
  36.  
  37.     // TODO: Rename and change types of parameters
  38.     private String mParam1;
  39.     private String mParam2;
  40.     private ListView listView;
  41.     private EditText editText;
  42.     private MyRunnable<KorisnikVM> callback;
  43.  
  44.  
  45.     public PretragaDialogFragment() {
  46.     }
  47.  
  48.     public static PretragaDialogFragment newInstance(MyRunnable myCallback) {
  49.         PretragaDialogFragment fragment = new PretragaDialogFragment();
  50.         Bundle args = new Bundle();
  51.         args.putSerializable(NEKI_KEY, myCallback);
  52.         fragment.setArguments(args);
  53.         return fragment;
  54.     }
  55.  
  56.     @Override
  57.     public void onCreate(Bundle savedInstanceState) {
  58.         super.onCreate(savedInstanceState);
  59.         if (getArguments() != null) {
  60.             callback = (MyRunnable<KorisnikVM>) getArguments().getSerializable(NEKI_KEY);
  61.         }
  62.         setStyle(STYLE_NORMAL, R.style.MojDialog);
  63.  
  64.  
  65.     }
  66.  
  67.     @Override
  68.     public View onCreateView(LayoutInflater inflater, ViewGroup container,
  69.                              Bundle savedInstanceState) {
  70.         // Inflate the layout for this fragment
  71.         View view = inflater.inflate(R.layout.fragment_pretraga_dialog, container, false);
  72.  
  73.         listView = view.findViewById(R.id.listView);
  74.         editText = view.findViewById(R.id.queryString);
  75.  
  76.  
  77.         Button btnTrazi = view.findViewById(R.id.btnTrazi);
  78.         btnTrazi.setOnClickListener(new View.OnClickListener() {
  79.             @Override
  80.             public void onClick(View v) {
  81.                 do_btnTraziClick();
  82.             }
  83.         });
  84.  
  85.         return view;
  86.     }
  87.  
  88.     private void do_btnTraziClick() {
  89.         String query = editText.getText().toString();
  90.         popuniPodatke(query);
  91.     }
  92.  
  93.     private void popuniPodatke(String query) {
  94.         final List<KorisnikVM> podaci = Storage.getKorisniciByime(query);
  95.  
  96.         listView.setAdapter(new BaseAdapter() {
  97.             @Override
  98.             public int getCount() {
  99.                 return podaci.size();
  100.             }
  101.  
  102.             @Override
  103.             public Object getItem(int position) {
  104.                 return null;
  105.             }
  106.  
  107.             @Override
  108.             public long getItemId(int position) {
  109.                 return 0;
  110.             }
  111.  
  112.             @Override
  113.             public View getView(int position, View view, ViewGroup parent) {
  114.  
  115.                 if (view == null) {
  116.                     LayoutInflater inflater = (LayoutInflater) getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
  117.                     view = inflater.inflate(R.layout.stavka_primaoci, parent, false);
  118.                 }
  119.  
  120.                 TextView txtIme = (TextView) view.findViewById(R.id.firstLinePrimaoci);
  121.                 TextView txtAdresa = (TextView) view.findViewById(R.id.secondLinePrimaoci);
  122.  
  123.                 KorisnikVM x = podaci.get(position);
  124.  
  125.                 txtAdresa.setText(x.getOpstinaVM().toString());
  126.                 txtIme.setText(x.getImePrezime());
  127.  
  128.                 return view;
  129.             }
  130.         });
  131.  
  132.         listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
  133.             @Override
  134.             public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
  135.                 KorisnikVM x = podaci.get(position);
  136.                 getDialog().dismiss();
  137.                 callback.run(x);
  138.             }
  139.         });
  140.  
  141.  
  142.     }
  143.  
  144. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement