我需要实现这一点: 1-在工具栏中搜索。 2-隐藏" id_pers"在列表视图中 3-当我点击项目时," id_pers"得到其他活动:
我的代码显示远程mysql数据库中的列表,但搜索不起作用。 我的活动:
public class SearchPersonaleActivity extends AppCompatActivity implements LoadJSONTask.Listener, AdapterView.OnItemClickListener {
private ListView mListView;
// Search EditText
EditText inputSearch;
ArrayAdapter<String> adapter;
public static final String URL = "http://page.com/createjson.php";
private List<HashMap<String, String>> mAndroidMapList = new ArrayList<>();
private static final String KEY_IDP = "id_pers";
private static final String KEY_NAME = "surname_name";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_search_personale);
mListView = (ListView) findViewById(R.id.list_view);
mListView.setOnItemClickListener(this);
new LoadJSONTask(this).execute(URL);
//search
inputSearch.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence cs, int arg1, int arg2,
int arg3) {
// When user changed the Text
SearchPersonaleActivity.this.adapter.getFilter().filter(cs);
}
@Override
public void beforeTextChanged(CharSequence arg0, int arg1,
int arg2, int arg3) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable arg0) {
}
});
//fine search
}
@Override
public void onLoaded(List<AndroidVersion> androidList) {
for (AndroidVersion android : androidList) {
HashMap<String, String> map = new HashMap<>();
map.put(KEY_IDP, android.getId());
map.put(KEY_NAME, android.getPersonale());
mAndroidMapList.add(map);
}
loadListView();
}
@Override
public void onError() {
Toast.makeText(this, "Error !", Toast.LENGTH_SHORT).show();
}
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
//Toast.makeText(this, mAndroidMapList.get(i).get(KEY_NAME),Toast.LENGTH_LONG).show();
}
private void loadListView() {
ListAdapter adapter = new SimpleAdapter(SearchPersonaleActivity.this, mAndroidMapList, R.layout.list_item,
new String[] { KEY_IDP,KEY_NAME },
new int[] { R.id.version,R.id.name,});
mListView.setAdapter(adapter);
}
}