-2

在我的代码Toast中显示空值,edittext当我单击按钮时不显示字符串值。请告诉我这段代码有什么问题。

String Serachvalue;
EditText  editText2;
ImageView imageView1 = (ImageView) findViewById(R.id.imageView1);
editText2 = (EditText) findViewById(R.id.editText2);
Serachvalue=editText2.getText().toString();
imageView1.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {

      Toast.makeText(HomeMenu.this, Serachvalue, Toast.LENGTH_SHORT).show();

            }
    });

XML

 <EditText
 android:id="@+id/editText2"
 android:layout_width="match_parent"
 android:layout_height="wrap_content"
 android:layout_marginLeft="10dp"
 android:paddingTop="20dp"
 android:layout_toLeftOf="@+id/imageView1"
 android:hint="  Search School By Name" >
 </EditText>
4

3 回答 3

0

在 onclick 列表器内移动到单行下方。

Serachvalue=editText2.getText().toString();

像下面@

imageView1.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
      Serachvalue=editText2.getText().toString();
      Toast.makeText(HomeMenu.this, Serachvalue, Toast.LENGTH_SHORT).show();

            }
    });
于 2013-09-09T10:28:35.770 回答
0

在 onclicklistener 中分配您的 searchValue。我猜您是在 oncreate() 中分配您的搜索值,那时您的 edittext 在创建活动时将具有空值。

于 2013-09-09T10:30:41.767 回答
0

在 Toast 中显示文本之前检查长度

首先将字符串初始化为

String Serachvalue = "Please type something !";

然后检查长度并重新初始化。

if(editText2.getText().toString().length()!=0)
        Serachvalue=editText2.getText().toString();
于 2013-09-09T10:38:56.017 回答