1

カレンダーの作成に使用しているグリッドビューがあります。カレンダー/グリッドビューの外側をクリックすると、最初の選択が強調表示されたままになります。カレンダー/グリッドビューはビューの上半分を占め、フラグメント内にあり、対応するリストが下に表示されます。フラグメントのグリッドの私のレイアウトは次のとおりです。

  <GridView
     android:id="@+id/weekGrid"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:listSelector="@color/green"
     android:numColumns="7" >
  </GridView>

最初のセルを強調表示するには、アダプターを設定した後、次を使用してその位置を設定します。

  calGrid.requestFocusFromTouch();
  calGrid.setSelection(startPosition);

最初の選択は、必要に応じて緑色です。ただし、グリッドビューからクリックするとすぐに緑色の背景が消えます。これは、別のセルを選択してグリッドビューから離れた場所をクリックしても発生しません。この場合、ハイライトは残ります。グリッドビューで onFocusChange リスナーを設定しようとしました。ただし、グリッドビューの外側をクリックしても、これはトリガーされません。また、android:listSelector でセレクターを使用してみました。

よろしくお願いします。

4

1 に答える 1