[解決済み] AndroidのToolbarでSearchViewウィジェットの白い下線を消す方法
2023-07-10 12:44:35
質問
私は、私のプロジェクトでツールバー検索ウィジェットを使用しています。すべてがうまく動作しますが、私は完全に私のツールバーの検索フィールドの下に下線を削除して立ち往生していることを期待しています。私は多くの解決策を試してみましたが、何もうまくいかない。以下は、私が試したソリューションの一部です。
要件は、画像内の白い下線を削除することです。
Istソリューションです。
//Removing underline
int searchPlateId = searchView.getContext().getResources().getIdentifier("android:id/search_plate", null, null);
View searchPlate = searchView.findViewById(searchPlateId);
if (searchPlate!=null) {
searchPlate.setBackgroundColor (Color.TRANSPARENT);
int searchTextId = searchPlate.getContext ().getResources ().getIdentifier ("android:id/search_src_text", null, null);
}
IInd Solution:
EditText searchEdit = ((EditText)searchView.findViewById(android.support.v7.appcompat.R.id.search_src_text));
searchEdit.setBackgroundColor(Color.TRANSPARENT);
上記のコードでEditTextの背景は変更されましたが、SearchBarのcloseアイコンの下にアンダーラインが表示されたままになっています。
私がSearchBarウィジェットに使用している完全なコードは次のとおりです。
SearchBar
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater infl) {
super.onCreateOptionsMenu(menu, infl);
MenuInflater inflater = getActivity().getMenuInflater();
inflater.inflate(R.menu.action_search, menu);
final SearchView searchView = (SearchView) MenuItemCompat
.getActionView(menu.findItem(R.id.search));
SearchManager searchManager = (SearchManager) getActivity ().getSystemService (getActivity ().SEARCH_SERVICE);
searchView.setSearchableInfo (searchManager.getSearchableInfo (getActivity ().getComponentName ()));
//changing edittext color
EditText searchEdit = ((EditText)searchView.findViewById(android.support.v7.appcompat.R.id.search_src_text));
searchEdit.setTextColor(Color.WHITE);
}
action_search.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:compat="http://schemas.android.com/apk/res-auto">
<item android:id="@+id/search"
android:title="Search"
android:icon="@drawable/abc_ic_search_api_mtrl_alpha"
compat:showAsAction="ifRoom|collapseActionView"
compat:actionViewClass="android.support.v7.widget.SearchView" />
</menu>
と重複する可能性がある この
どのように解決するのですか?
以下のように一度お試しください。
View v = searchView.findViewById(android.support.v7.appcompat.R.id.search_plate);
v.setBackgroundColor(Color.parseColor("here give actionbar color code"));
これがあなたの助けになることを願っています。
関連
-
[解決済み] Androidのソフトキーボードをプログラムで閉じる/隠すにはどうすればよいですか?
-
[解決済み] Androidでアクティビティ起動時にEditTextにフォーカスが当たらないようにする方法
-
[解決済み] AndroidのListViewで画像を遅延ロードする方法
-
[解決済み] Androidで画面の大きさをピクセル単位で取得する方法
-
[解決済み] Androidアプリケーションのアクティビティ間でデータを受け渡すにはどうすればよいですか?
-
[解決済み] Androidのレイアウトで文字に下線を引くことはできますか?
-
[解決済み] ツールバーでのSearchViewの使い方 Android
-
[解決済み] HttpPostによる画像送信
-
[解決済み] 実行に失敗しました app:processDebugResources Android Studio
-
[解決済み] Recyclerviewと異なるタイプの行のインフレーションの処理
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Eclipseでのandroid:configChangesでのAdmobエラー
-
[解決済み] プログラムでソフトキーボードを開く
-
[解決済み] CardView layout_width="match_parent "が親のRecyclerViewの幅と一致しない。
-
[解決済み] アンドロイドのクライアントでヒープアップデートを有効にする方法
-
[解決済み] APKが署名済みかデバッグビルドかを確認するには?
-
[解決済み] フラグメント間の値の受け渡し方法
-
[解決済み] ProjectScopeServices に Factory タイプのサービスはありません。
-
[解決済み] proguard hell - 参照されているクラスが見つかりません。
-
[解決済み] ViewPager2でスワイプを無効にするには?
-
[解決済み] サーチビューウィジェットの背景の描画を変更する