[英]How to open new activity by clicking on SearchView
我創建了一個使用搜索視圖的 Android 項目。 我想通過單擊 SearchView 打開一個新活動。 當我單擊 SearchView 的圖標時,它可以正常工作,但是當我單擊 SearchView 的空白區域時,鍵盤會彈出並且新活動沒有打開。
我的Java代碼:
searchView=root.findViewById(R.id.search);
searchView.setIconifiedByDefault(true);
searchView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent searchIntent=new Intent(getActivity(),Notification_activity.class);
getActivity().startActivity(searchIntent);
}
});
我的 XML:
<SearchView
android:id="@+id/search"
android:layout_width="333dp"
android:layout_height="40dp"
android:layout_marginStart="8dp"
android:layout_marginLeft="8dp"
android:layout_marginTop="8dp"
android:layout_marginEnd="8dp"
android:layout_marginRight="8dp"
android:layout_marginBottom="8dp"
android:background="@drawable/search_round_corner"
android:iconifiedByDefault="false"
android:queryHint="Enter text to search"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
</SearchView>
searchView.setOnSearchClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i = new Intent(this,page,class);
startActivity(i);
}
});
searchView.setOnCloseListener(new SearchView.OnCloseListener() {
@Override
public boolean onClose() {
//do what you want searchview is not expanded
return false;
}
});
您應該為此目的使用查詢偵聽器,因為在鍵入單個單詞后,當您從鍵盤提交按鈕並執行搜索視圖功能時,它將轉到第二個活動。 這是代碼
searchView.OnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String s) {
String text = s;
if (text.length() > 0) {
startActivity(new Intent(Class A Context, Sceond Class B));
}
return false;
}
@Override
public boolean onQueryTextChange(String s) {
return false;
}
});
使用此代碼,
searchView.setOnSearchClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent(A.this, B.class));
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.