- package com.example.maciek.projekt;
- import android.content.Intent;
- import android.database.Cursor;
- import android.database.sqlite.SQLiteDatabase;
- import android.graphics.Bitmap;
- import android.graphics.BitmapFactory;
- import android.os.Bundle;
- import android.support.v7.app.AppCompatActivity;
- import android.text.Editable;
- import android.text.TextWatcher;
- import android.view.View;
- import android.view.ViewGroup;
- import android.widget.BaseAdapter;
- import android.widget.EditText;
- import android.widget.ImageView;
- import android.widget.ListView;
- import android.widget.TextView;
- import android.widget.Toast;
- import java.util.ArrayList;
- public class kontaktylista2 extends AppCompatActivity {
- ArrayList<listacustom2> lista = new ArrayList<listacustom2>();
- SQLiteDatabase myDB;
- EditText szukanytekst;
- ListView list;
- CustomAdapter2 customAdapter;
- public void listaprzypomnien(String string) {
- Cursor c;
- if(string == null || string.equals("")) {
- c = myDB.rawQuery("select Imie, Nazwisko, Telefon, Email, Plec, id, Avatar from kontakty", null);
- }
- else {
- c = myDB.rawQuery("select Imie, Nazwisko, Telefon, Email, Plec, id, Avatar from kontakty WHERE Imie LIKE '%"+string+"%' OR Nazwisko LIKE '%"+string+"%' OR Telefon LIKE '%"+string+"%' OR Email LIKE '%"+string+"%'", null);
- }
- while (c.moveToNext()) {
- String Imie = c.getString(0);
- String Nazwisko = c.getString(1);
- String Telefon = c.getString(2);
- String Email = c.getString(3);
- String Plec = c.getString(4);
- int id = c.getInt(5);
- byte[] avatar = c.getBlob(6);
- lista.add(new listacustom2(Imie, Nazwisko, Telefon, Email, Plec, id, avatar));
- }
- c.close();
- // lista.add(new listacustom2("aa","aa","aa","aa","aa",5));
- }
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_kontaktylista2);
- myDB = openOrCreateDatabase("my.db", MODE_PRIVATE, null);
- myDB.execSQL(
- "CREATE TABLE IF NOT EXISTS kontakty (id INTEGER PRIMARY KEY AUTOINCREMENT, Imie VARCHAR(200), Nazwisko VARCHAR(200), Telefon VARCHAR(200), Email VARCHAR(200), Plec VARCHAR(1), Avatar BLOB, Wybrany INTEGER)"
- );
- list = (ListView) findViewById(R.id.kontaktylista);
- customAdapter = new CustomAdapter2();
- aktualizuj(null);
- szukanytekst=(EditText) findViewById(R.id.editText10);
- szukanytekst.addTextChangedListener(szukajkatextwatcher);
- }
- public void aktualizuj(String string) {
- lista.clear();
- listaprzypomnien(string);
- if(lista.size()==0) {
- Toast.makeText(getApplicationContext(), "Brak kontaktow!", Toast.LENGTH_SHORT).show();
- }
- list.setAdapter(customAdapter);
- }
- private TextWatcher szukajkatextwatcher = new TextWatcher() {
- @Override
- public void beforeTextChanged(CharSequence s, int start, int count, int after) {
- // aktualizuj(szukanytekst.getText().toString());
- }
- @Override
- public void onTextChanged(CharSequence s, int start, int before, int count) {
- aktualizuj(szukanytekst.getText().toString());
- }
- @Override
- public void afterTextChanged(Editable s) {
- // aktualizuj(szukanytekst.getText().toString());
- }
- };
- class CustomAdapter2 extends BaseAdapter {
- @Override
- public int getCount() {
- return lista.size();
- }
- @Override
- public Object getItem(int i) {
- return null;
- }
- @Override
- public long getItemId(int i) {
- return 0;
- }
- @Override
- public View getView(int i, View view, ViewGroup viewGroup) {
- view = getLayoutInflater().inflate(R.layout.rowkontakty,null);
- TextView textImie = (TextView)view.findViewById(R.id.textcontactname);
- TextView textNazwisko = (TextView)view.findViewById(R.id.textcontactlastname);
- TextView textTelefon = (TextView)view.findViewById(R.id.textcontactphone);
- textImie.setText(lista.get(i).Imie);
- textNazwisko.setText(lista.get(i).Nazwisko);
- textTelefon.setText(lista.get(i).Telefon);
- if(lista.get(i).Avatar.length >= 1) {
- Bitmap Avatar = BitmapFactory.decodeByteArray(lista.get(i).Avatar, 0, lista.get(i).Avatar.length);
- ImageView imageview = (ImageView) view.findViewById(R.id.imageViewavatar);
- imageview.setImageBitmap(Avatar);
- }
- final int ii = i;
- view.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View view) {
- view.setBackgroundResource(R.color.colorPrimaryDark);
- Intent intent = new Intent(kontaktylista2.this, KontaktyDisplay.class);
- intent.putExtra("id", lista.get(ii).id);
- startActivity(intent);
- finish();
- }
- });
- return view;
- }
- }
- class listacustom2 {
- public int id = 0;
- public String Imie="";
- public String Nazwisko="";
- public String Telefon="";
- public String Email="";
- public String Plec="";
- public byte[] Avatar=null;
- listacustom2(String Imie, String Nazwisko, String Telefon, String Email, String Plec, int id, byte[] Avatar) {
- this.Imie = Imie;
- this.Nazwisko = Nazwisko;
- this.Telefon = Telefon;
- this.Email = Email;
- this.Plec = Plec;
- this.Avatar=Avatar;
- this.id = id;
- }
- }
- }