[解決済み] 誰かdescendantFocusability = afterDescendantsについて説明してください。
2022-02-14 19:18:57
質問
理解するのに苦労しています
descendantFocusability
. 特に
afterDescendants
.
どなたか、この方法が役に立つ例を教えてください。
どのように解決するのですか?
の関係を定義します。
ViewGroup
とその子孫を探すときに
View
にフォーカスを当てる。
以下の定数値のいずれかでなければならない。
+------------------------------------------------------------------------------------------+ | 定数値の説明 +------------------------------------------------------------------------------------------+ | afterDescendants 1 ViewGroupは以下の場合にのみフォーカスを取得します。 | その子孫のどれもがそれを望んでいない。 | +------------------------------------------------------------------------------------------+ | beforeDescendants 0 ViewGroupがフォーカスを得るのは|? | どの子孫も | +------------------------------------------------------------------------------------------+ | blocksDescendants 2 ViewGroup は、その子孫をブロックします。 | フォーカスを取得します。 | +------------------------------------------------------------------------------------------+
完全な例を確認することができます ここで .
スニペットは:
public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
ListView listView = getListView();
Log.d(TAG, "onItemSelected gave us " + view.toString());
Button b = (Button) view.findViewById(R.id.button);
EditText et = (EditText) view.findViewById(R.id.editor);
if (b != null || et != null) {
// Use afterDescendants to keep ListView from getting focus
listView.setDescendantFocusability(ViewGroup.FOCUS_AFTER_DESCENDANTS);
if(et!=null) et.requestFocus();
else if(b!=null) b.requestFocus();
} else {
if (!listView.isFocused()) {
// Use beforeDescendants so that previous selections don't re-take focus
listView.setDescendantFocusability(ViewGroup.FOCUS_BEFORE_DESCENDANTS);
listView.requestFocus();
}
}
}
上記のスニペットのように
afterDescendants
は
listview
がフォーカスを得ることができないように、どちらかの
EditText
または
Button
はフォーカスを要求することができます。
備考 : 上記のリンクは壊れています。私の 要旨 コード
関連
-
[解決済み] 現在のテーマでスタイル 'coordinatorLayoutStyle' を見つけることができませんでした。
-
[解決済み] com.android.supportのライブラリは全て全く同じバージョン表記である必要があります。
-
[解決済み] android.os.NetworkOnMainThreadException' を修正するにはどうすればよいですか?
-
[解決済み] インスタンス状態の保存を使用してアクティビティ状態を保存するにはどうすればよいですか?
-
[解決済み] Eclipseにプロジェクトをインポートした後に「Must Override a Superclass Method」エラーが発生する。
-
[解決済み] グリッドレイアウトにおけるフリングジェスチャーの検出
-
[解決済み] ViewPagerでFragmentが表示されるタイミングを決定する方法
-
[解決済み] Androidのエラーです。デバイス*に*.apkをインストールできませんでした: タイムアウト
-
[解決済み] ViewPager PagerAdapter がビューを更新しない
-
[解決済み] Androidレイアウトのフォルダにサブフォルダを含めることはできますか?
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】パッケージ名(Google Analytics)に一致するクライアントが見つからない - 複数のproductFlavorsとbuildTypes
-
[解決済み] ユーザーが拒否する可能性のあるパーミッションが必要なコール
-
[解決済み】レンダリングの問題 レンダリング中に発生した例外:com/android/util/PropertiesMap [重複].
-
[解決済み】新しいAVDを作成すると、CPU/ABIフィールドに「システムイメージがインストールされていません」と表示される。
-
[解決済み】Couldn't load memtrack module Logcat Error
-
[解決済み】googleコンソールエラー`OR-IEH-01`について
-
[解決済み] 起動アクティビティを特定できませんでした。デフォルトのアクティビティが見つかりませんでした
-
[解決済み] AndroidのADBデバイスが不正に
-
[解決済み] BIOSのセキュリティ設定でVT-xを有効にする(お使いのコンピュータのドキュメントを参照)。
-
[解決済み] android.intent.action.MAINの意味は何ですか?