0
以下のようにsqlDataBaseにテーブルを作成し、search
オプションを追加します。私は検索可能なパネルの単語に一致するListViewからカスタム色の項目を選択したい。 どうすればいいですか?アンドロイドでマッチアイテムを選択してlistViewで検索する方法は?
MainActivity.java:
public class MainActivity extends AppCompatActivity {
private ListView listView;
private AddAdapter adapter;
private DataBaseClass classDB;
private SQLiteDatabase sqlDB;
public final static ArrayList<String> _id=new ArrayList<String>();
public final static ArrayList<String> _name = new ArrayList<String>();
public final static ArrayList<String> _info = new ArrayList<String>();
private EditText search;
public String doneIntent;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView = (ListView) findViewById(R.id.ListView);
classDB =new DataBaseClass(this);
// search panel
search= (EditText) findViewById(R.id.search_panel);
search.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {
}
@Override
public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
MainActivity.this.adapter.getFilter().filter(charSequence);
}
@Override
public void afterTextChanged(Editable editable) {
}
});
}
AddAdapter.class:
public class AddBankAdapter extends BaseAdapter {
private Context context;
private ArrayList<String> Bid, Bname, Binfo;
public AddAdapter(Context c , ArrayList<String> id ,ArrayList<String> name, ArrayList<String> info){
context=c;
Bid=id; Bname=name; Binfo=info;
}
@Override
public int getCount() {
return Bid.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) {
...
}
getFilter()
何ですか? アイテムの色分けはできますか?
これは理論的には、ここでの回答の要部を含み、そしてのためのリンクを提供するために、(// meta.stackoverflow.com/q/8259)[それが望ましいだろう]、質問に答えるかもしれないが参照。 – GhostCat
私の問題は、なぜ 'getfilter()'メソッドが私のために初期化されていないのですか? –