dktetki
چهارشنبه 24 اردیبهشت 1393, 13:41 عصر
سلام دوستان
من میخوام برای پروژم یه جستجو گر در یک ستون از دیتابیسم درست کنم . پروژه من دارای DBadapter هستش ، حالا یه کلاس Search ساختم و این کدها رو درونش نوشتم ، و همچنین XML مربوط به جستجو رو هم ساختم ، حالا روی گوشی وقتی وارد این صفحه جستجو میشم خالی هست صفحه و وقتی روی EditText میزنم که کلمه وارد کنم میپره بیرون ، بنظرتون چیکار کنم چجور یه جستجوی ساده درست کنم براش
package com.example.app.one;
import com.example.app.one.database.DBAdapter;
import com.example.app.one.database.Sms;
import java.util.List;
import android.app.ListActivity;
import android.content.Intent;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextWatcher;
import android.util.Log;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.ListAdapter;
import android.widget.ListView;
import android.widget.RadioButton;
public class Searchxha extends ListActivity {
DBAdapter db;
List<Sms> smss;
ListView lst;
EditText et;
RadioButton rd_name;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_searchxha);
db = new DBAdapter(getBaseContext());
db.open();
lst = getListView();
et = (EditText) findViewById(R.id.editText1);
rd_name = (RadioButton) findViewById(R.id.radioButton1);
et.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) {
// TODO Auto-generated method stub
}
@Override
public void beforeTextChanged(CharSequence arg0, int arg1, int arg2,
int arg3) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable arg0) {
// TODO Auto-generated method stub
if(rd_name.isChecked()){
smss = db.findContacts(et.getText().toString(), DBAdapter.KEY_SMS);
}
refreshDisplay();
}
});
}
public void refreshDisplay() {
Log.i(DBAdapter.TAG, smss.size() + "= tedad fun smss");
ArrayAdapter<Sms> adapter = new SmsAdapter(this, smss);
setListAdapter(adapter);
}
@Override
protected void onResume() {
// TODO Auto-generated method stub
super.onResume();
if(rd_name.isChecked()){
smss = db.findContacts(et.getText().toString(), DBAdapter.KEY_SMS);
}
refreshDisplay();
}
}
من میخوام برای پروژم یه جستجو گر در یک ستون از دیتابیسم درست کنم . پروژه من دارای DBadapter هستش ، حالا یه کلاس Search ساختم و این کدها رو درونش نوشتم ، و همچنین XML مربوط به جستجو رو هم ساختم ، حالا روی گوشی وقتی وارد این صفحه جستجو میشم خالی هست صفحه و وقتی روی EditText میزنم که کلمه وارد کنم میپره بیرون ، بنظرتون چیکار کنم چجور یه جستجوی ساده درست کنم براش
package com.example.app.one;
import com.example.app.one.database.DBAdapter;
import com.example.app.one.database.Sms;
import java.util.List;
import android.app.ListActivity;
import android.content.Intent;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextWatcher;
import android.util.Log;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.ListAdapter;
import android.widget.ListView;
import android.widget.RadioButton;
public class Searchxha extends ListActivity {
DBAdapter db;
List<Sms> smss;
ListView lst;
EditText et;
RadioButton rd_name;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_searchxha);
db = new DBAdapter(getBaseContext());
db.open();
lst = getListView();
et = (EditText) findViewById(R.id.editText1);
rd_name = (RadioButton) findViewById(R.id.radioButton1);
et.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) {
// TODO Auto-generated method stub
}
@Override
public void beforeTextChanged(CharSequence arg0, int arg1, int arg2,
int arg3) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable arg0) {
// TODO Auto-generated method stub
if(rd_name.isChecked()){
smss = db.findContacts(et.getText().toString(), DBAdapter.KEY_SMS);
}
refreshDisplay();
}
});
}
public void refreshDisplay() {
Log.i(DBAdapter.TAG, smss.size() + "= tedad fun smss");
ArrayAdapter<Sms> adapter = new SmsAdapter(this, smss);
setListAdapter(adapter);
}
@Override
protected void onResume() {
// TODO Auto-generated method stub
super.onResume();
if(rd_name.isChecked()){
smss = db.findContacts(et.getText().toString(), DBAdapter.KEY_SMS);
}
refreshDisplay();
}
}