我一直在尝试从我的AutoCompleteTextView(sp_Especie)之一中获取selectedItem并将其传递给 字符串变量,因此我可以在另一个条件(sp_Raza)中在if条件下使用它,但没有成功。
这里是我的代码:
final ArrayList Perros = new ArrayList();
String[] datos = new String[]{"Perro", "Gato"};
ArrayAdapter<String> adapter = new ArrayAdapter<String>(CrearPost.this, android.R.layout.simple_dropdown_item_1line, datos);
sp_Especie.setAdapter(adapter);
sp_Especie.setThreshold(1);
sp_Raza.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
AutoCompleteTextView sp_Especie = (AutoCompleteTextView) findViewById(R.id.sp_Especie);
String text = sp_Especie.toString();
System.out.println("COMES DATA " + text);
if(text=="Perro"){
AsyncHttpClient client = new AsyncHttpClient();
client.get("domain+php", new AsyncHttpResponseHandler() {
@Override
public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) {
if(statusCode==200){
try {
JSONArray jsonArray = new JSONArray(new String(responseBody));
for (int i=0; i<jsonArray.length();i++){
System.out.println("COMES DATA " + jsonArray.getJSONObject(i).getString("Nombre"));
Perros.add(jsonArray.getJSONObject(i).getString("Nombre"));
}
} catch (JSONException e) {
e.printStackTrace();
}
}
}
@Override
public void onFailure(int statusCode, Header[] headers, byte[] responseBody, Throwable error) {
}
});
ArrayAdapter<String> adapter = new ArrayAdapter<String>(CrearPost.this, android.R.layout.simple_dropdown_item_1line, Perros);
sp_Raza.setAdapter(adapter);
sp_Raza.setThreshold(1);
}
}
});
我已经检查了logcat,看来文本没有任何回馈。但是我是AutoCompleteTextViews的新手,所以我不知道我可以使用什么方法来解决这个问题。
任何帮助都会受到高度重视
答案 0 :(得分:0)
要从AutoCompleteTextView
获取文本,您应该使用
String text = sp_Especie.getText().toString();
代替
String text = sp_Especie.toString();
您的代码将是
sp_Raza.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
AutoCompleteTextView sp_Especie = (AutoCompleteTextView) findViewById(R.id.sp_Especie);
String text = sp_Especie.getText().toString();
System.out.println("COMES DATA " + text);
if ("Perro".equals(text)) {
// TODO: Write your code here
}
}
});