当我点击移动到下一页的按钮时出错
Error when i click the button for move to the next page
当我点击按钮时,发生了这样的事情:
https://i.stack.imgur.com/PeAAG.png
该按钮用于在用户填充时从searchView 中获取值。并为打开下一个activity。
点击:
String state;
SearchView searchView;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_search);
searchView=(SearchView)findViewById(R.id.search_product);
Button get_product=findViewById(R.id.get_product);
get_product.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String product=searchView.toString();
Intent intent = new Intent(SearchActivity.this, The_End.class);
intent.putExtra("product", product);
Toast.makeText(getApplicationContext(),product,Toast.LENGTH_SHORT).show();
startActivity(intent);
}
});
}
这是我的 xml 按钮和搜索视图:
<SearchView
android:id="@+id/search_product"
android:layout_width="249dp"
android:layout_height="37dp"
android:background="#CCCDFF"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.285" />
<Button
android:id="@+id/get_product"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Next "
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.839"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/search_product"
app:layout_constraintVertical_bias="0.885" />
在 String product=searchView.toString();
中,您没有获取 searchview 的值,您正在获取 searchview 的引用并使用 toString()
将其转换为字符串,这是不应该做的。
要获取搜索视图的内容,您需要使用 searchView.getQuery()
,然后将结果放入您的 intent.putExtra("product", searchView.getQuery());
String product = searchView.toString();
为您提供 SearchView 的 viewId used.Instead 以从您需要使用的 searchView 获取文本
String product = searchView.getQuery().toString();
当我点击按钮时,发生了这样的事情:
https://i.stack.imgur.com/PeAAG.png
该按钮用于在用户填充时从searchView 中获取值。并为打开下一个activity。 点击:
String state;
SearchView searchView;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_search);
searchView=(SearchView)findViewById(R.id.search_product);
Button get_product=findViewById(R.id.get_product);
get_product.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String product=searchView.toString();
Intent intent = new Intent(SearchActivity.this, The_End.class);
intent.putExtra("product", product);
Toast.makeText(getApplicationContext(),product,Toast.LENGTH_SHORT).show();
startActivity(intent);
}
});
}
这是我的 xml 按钮和搜索视图:
<SearchView
android:id="@+id/search_product"
android:layout_width="249dp"
android:layout_height="37dp"
android:background="#CCCDFF"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.285" />
<Button
android:id="@+id/get_product"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Next "
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.839"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/search_product"
app:layout_constraintVertical_bias="0.885" />
在 String product=searchView.toString();
中,您没有获取 searchview 的值,您正在获取 searchview 的引用并使用 toString()
将其转换为字符串,这是不应该做的。
要获取搜索视图的内容,您需要使用 searchView.getQuery()
,然后将结果放入您的 intent.putExtra("product", searchView.getQuery());
String product = searchView.toString();
为您提供 SearchView 的 viewId used.Instead 以从您需要使用的 searchView 获取文本
String product = searchView.getQuery().toString();