Well, I created a search screen with Pain text and added a ListView to show the suggestions, but how do I click the item that appears in the list?
Java code
public class Tempo_Real extends AppCompatActivity {
EditText edtlinha,edtparada;
Button btmbuscar;
String linhas [] = {"Alvorada","Maracana","Res.Salvação"};
private ListView lista;
ArrayAdapter<String> adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_tempo__real);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
lista = (ListView) findViewById(R.id.Lista);
edtlinha = (EditText) findViewById(R.id.edtLinha);
edtparada = (EditText) findViewById(R.id.edtParada);
btmbuscar = (Button) findViewById(R.id.btnBuscar);
adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, linhas);
lista.setAdapter(adapter);
edtlinha.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
adapter.getFilter().filter(s);
}
@Override
public void afterTextChanged(Editable s) {
}
});
lista.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position,
long id) {
// Faz o que você quiser. Com o parâmetro "position” você pode obter o item correspondente do Adapter de acordo com o item clicado.
}
});
}
public void btnBuscar (View view) {
String stlinha = edtlinha.getText().toString();
String stparada = edtparada.getText().toString();
if(stlinha.equals("Alvorada")&& stparada.equals("CA1507")) {
Intent intencao = new Intent(this,Alvorada_Tempo_Real.class);
startActivity(intencao);
}
if(stlinha.equals("Maracana")&& stparada.equals("CE1507")) {
Intent intencao = new Intent(this,Maracana_Tempo_Real.class);
startActivity(intencao);
}
if(stlinha.equals("Res.Salvação")&& stparada.equals("CE1507")) {
Intent intencao = new Intent(this,Res_Salvacao_Tempo_Real.class);
startActivity(intencao);
}
else if(stlinha.equals("")|| stparada.equals("")) {
Toast.makeText(getBaseContext(),"linha ou Parada não Cadastrada",Toast.LENGTH_SHORT).show();
}
else {
Toast.makeText(getBaseContext(),"linha ou Parada não Cadastrada",Toast.LENGTH_SHORT).show();
}
}
}